Используйте Adafruit 16-Channel 12-bit PWM/Servo Shield для переключения реле

Мне интересно, можно ли с помощью Adafruit 16-Channel 12-bit PWM/Servo Shield переключать реле, например, использовать этот экран в качестве мультиплексора и использовать цифровой выход без ШИМ.

Возможно ли это? пример кода?

, 👍0

Обсуждение

Это глупо. Найдите что-нибудь с GPIO., @Ignacio Vazquez-Abrams

извините, не могли бы вы немного расширить свой комментарий?, @nkint

Благодарим Вас за проявленный интерес и время, которое Вы уделили, чтобы ответить на наши вопросы. У меня та же проблема, и я хочу, чтобы пример кода управлял реле с помощью 16-канального ШИМ i2c. Не могли бы вы мне помочь? Как я могу использовать этот код в ответе вверху: pwm.setPWMFreq(1000);//поместите это в setup() ... // включить реле на канале 15 pwm.setPWM(15, 1, 0); ... // отключаем реле на 15 канале pwm.setPWM(15, 1, 1); Спасибо, @zarki mouhcine


2 ответа


1

Это сработает. Просто убедитесь, что вы не используете часть библиотеки Servo, а только часть PWM, и установите рабочий цикл на 100%. Реле должно по-прежнему работать, даже если рабочий цикл немного ниже, так как магнитному полю требуется некоторое время, чтобы разрушиться. Просто убедитесь, что вы не забыли добавить (обратный) диод в реле.

Глядя на техническое описание, я думаю, вам нужно использовать следующий код

pwm.setPWMFreq(1000);//поместите это в setup()
...
// включить реле на канале 15
pwm.setPWM(15, 1, 0);
...
// отключаем реле на 15 канале
pwm.setPWM(15, 1, 1);
,

Извините, я не указал раньше, мне нужны оба: ШИМ и цифровой выход. Таким образом вы «удаляете» ШИМ, верно?, @nkint

Нет. Единственное, что я изменил, это частоту ШИМ (до максимально возможного значения)., @Gerben

@nkint Зачем вам управлять реле с помощью ШИМ? В лучшем случае ШИМ будет достаточно быстрым, чтобы не влиять на ваше реле. В худшем случае это может заставить его гудеть. Или вы говорите, что вам нужны одни линии для управления реле, а другие для управления выходами ШИМ?, @Duncan C


0

Использование сервощита Adafruit PWM кажется излишним, вы платите за множество функций (PWM), которые вы не будете использовать. Если вы хотите использовать экран, чтобы уменьшить количество контактов, используемых на вашей плате Arduino, рассмотрите пару сдвиговых регистров (например, 74HC595). Реле нуждаются в логической 1 или логическом 0 для изменения состояния. Вы отправляете в регистр сдвига битовый шаблон, который устанавливает выходные контакты регистра сдвига в 1 или 0. Я нашел эту страницу полезно.

,

Извините, я не указал раньше, мне нужны оба: ШИМ __ и __ цифровой выход. Хоть Хэнкс., @nkint