А диммер у меня в купе с вольтметром, видно будет сколько подаётся.
А диммер у меня в купе с вольтметром, видно будет сколько подаётся.
Если под нагрузкой то будет видно
Возьми паяльник, диммер, вольтметр и проверь.
Если нет паяльника, тот спиральная лампочка подойдет
Последний раз редактировалось Chip; 12.02.2018 в 21:04.
Я уже проверял - видно.
Ну вот, одним вопросом меньше.
Теперь нужно понять какой кулер барть на 12 или 24В?
Можно собрать или купить на алиэкспрессе понижающий стабиллизатор с регулировкой напряжения
Последний раз редактировалось Chip; 13.02.2018 в 01:55.
У меня вот такой есть. А зачем его понижать?
Чем меньше напряжение на вентиляторе, тем меньше его мощность и как следствие падение оборотов
если через Ардуину регулировать обороты, то тогда понадобится ключ на MOSFET
Его можно выпаять со старой материнки
Последний раз редактировалось Chip; 13.02.2018 в 11:58.
Chip, спасибо за терпение и ответы на мои вопросы. MOSFET модуль у меня тоже есть. Оказалось для фена у меня почти всё есть : ) Осталось дождаться ручки, и начать сборку. Эту решил брать.
Поэкспериментировав кулером от компа и MOSFET, заметил что моторчик пищит на всех значениях кроме 255
Нашёл решение. Окольными путями, как оказалось, вернулся сюда же.PHP код:
int motorPin = 11;
void setup() {
pinMode(motorPin, OUTPUT);
}
void loop(){
analogWrite(motorPin, 105);
delay(1500);
analogWrite(motorPin, 125);
delay(1500);
analogWrite(motorPin, 145);
delay(1500);
analogWrite(motorPin, 165);
delay(1500);
analogWrite(motorPin, 185);
delay(1500);
analogWrite(motorPin, 205);
delay(1500);
analogWrite(motorPin, 225);
delay(1500);
analogWrite(motorPin, 245);
delay(1500);
analogWrite(motorPin, 255);
delay(5000);
analogWrite(motorPin, 0);
delay(10000);
}
Прикрутил энкодер - пока всё работает нормально. Вот как бы теперь на него же сделать регулировку нагревателя.PHP код:
TCCR2B = TCCR2B & 0b11111000 | 7;
Только что то типа дребезга, при однократном щелчке / повороте в COM порту иногда проскакивает не та стрелка <<< и почему то 2 разаPHP код:
#include <Encoder.h>
#define PIN_ENCODER_CLK 8
#define PIN_ENCODER_DT 9
#define PIN_ENCODER_SW 10
Encoder myEnc(PIN_ENCODER_DT, PIN_ENCODER_CLK);
int motorPin = 11;
int motorSpeed = 75; // Изначальная скорость двигателя
int accel = 1;
int i = 0;
long oldPosition = 0;
void setup() {
Serial.begin(9600);
TCCR2B = TCCR2B & 0b11111000 | 7; // Устанавливаем частоту 30,5 Герц
pinMode(motorPin, OUTPUT);
}
void loop(){
analogWrite(motorPin, motorSpeed); // Устанавливаем первоначальную скорость
//=== ручка энкодера/регулироака
long newPosition = myEnc.read() / accel;
if (newPosition > oldPosition)
{
analogWrite(motorPin, newPosition);
motorSpeed += 5; // Прибавляем скорость
Serial.println(">>>");
if ( motorSpeed > 255 )
motorSpeed = 255;
}
else
if (newPosition < oldPosition)
{
analogWrite(motorPin, newPosition);
motorSpeed -= 5; // Убавляем скорость
Serial.println("<<<");
if ( motorSpeed < 75 )
motorSpeed = 75;
}
if ( newPosition != oldPosition)
{
i = (i + 1)%16;
oldPosition = newPosition;
analogWrite( motorPin, motorSpeed );
}
}
Последний раз редактировалось Kevin; 13.02.2018 в 21:38.
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)