Управление кулером PC

Тема в разделе "Arduino & Shields", создана пользователем Deniss, 13 июн 2015.

  1. Unixon

    Unixon Оракул Модератор

    Вам же их не миллион нужно а всего один-два. Лучше тогда IRL3103.
     
    Salk нравится это.
  2. Salk

    Salk Гик

    Тогда решено - IRL3103. Спасибо. На неделе съезжу в магазин и куплю.
     
  3. Unixon

    Unixon Оракул Модератор

    Нет, значит P=I^2 * R = 0.09*0.012=1.08mW (для 3103)
     
  4. andriano

    andriano Нерд

    У транзистора пороговое напряжение 4 В: http://lib.chipdip.ru/144/DOC000144481.pdf
    После делителя на него подается только 2.5 В.
    Но полностью отказываться от стягивающего резистора я бы не стал, лучше либо уменьшить сопротивление от Ардуины до 1к, либо увеличить стягивающее до 100к.
    Если подходящих номиналов нет, можно перебросить ножку стягивающего резистора с затвора транзистора на выход Ардуины: делитель исчезнет, но затвор не повиснет в воздухе при высоком импедансе со стороны Ардуино.
     
  5. MDV

    MDV Гик

    поставь кондер параллельно кулеру, думаю писк исчезнет.
     
  6. Salk

    Salk Гик

    Да, писк исчезнет, но тогда всякая регулировка им также пропадет и он будет всегда крутится на максимум.
    Ставить конденсатор на затвор транзистора не очень хорошая идея, в моем случае конденсатор даже на 100 мкФ сильно "резал" диапазон регулирования. Большая же емкость вообще сводила всё регулирование к "вкл/выкл", а меньшая не избавляла от писка.

    Прикупил я IRL3103 и начал ставить опыты, и к моему удивлению писк остался. Но кулер при этом изменял обороты, как и положено, в большом диапазоне (примерно от 40-255) и было заметно, как он набирает или сбавляет обороты. Т.е. то, что нужно, если бы не "писк".
    Я начал экспериментировать, поигрался с конденсаторными. И мне удалось, сохранить почти весь диапазон регулирования и избавится от "писка". Схема такая:
    cooler.jpg
    Удивительно, то что если минус конденсатора перебросить на исток транзистора, то "писк" вновь появится. В принципе он и там полностью не исчезает, но в десятки раз становится тише. При 4.7 мкФ его можно расслышать только на низких оборотах и преподнеся ухо к кулеру. При 10 мкФ "писк" становится ещё тише, но начинает страдать верхний диапазон регулировки - при 10 мкФ кулер достигает максимума, примерно на 200-210 значениях ШИМ (при 4.7 мкФ - на 230-240, при этом минимальный порог не изменяется, кулер стартует с 40). Повышение емкости больше 10 мкФ, уменьшает диапазон, а уменьшение же емкости ниже 4.7 мкФ не устраняет "писк" :) Я думаю, что оптимальное значение тут 4.7 - 6.8 мкФ, керамические на 0.1 - 0.47 мкФ по желанию, хуже не будет. Пока меня все устраивает, остановлюсь на этом. Тестировал на двух кулерах - 140*140 мм и 40*40 мм, вели себя одинаково и даже пищали почти одинаково :)
     
  7. Unixon

    Unixon Оракул Модератор

    Что за <censored>? Что емкости делают на затворе? Они должны быть включены параллельно нагрузке.
     
  8. Salk

    Salk Гик

    Но я же...
    a69e8a323569f101e94426049fad06c1.jpg
    экспериментировал...
    Только так добился того чего хотел - широкий диапазон регулирования оборотов, без "писка".
    Я ставил конденсатор параллельно кулеру (на 100 мкФ) и он вращался с постоянной скоростью, не изменяя свою скорость.
    Я могу краткое видео записать... :(
     
  9. Unixon

    Unixon Оракул Модератор

    Какие-то у вашего конденсатора неправильные микрофарады. Попробуйте взять их поменьше.
     
  10. ИгорьК

    ИгорьК Гуру

    Насколько помнится, писк есть следствие низкой частоты ШИМ сигнала, которая устанавливается в Ардуино по умолчанию. Для решения проблемы писка, частоту ШИМ следует устанавливать через регистры, как и управлять им.
    Вот здесь когда-то занимался этим.
     
    Salk нравится это.
  11. Salk

    Salk Гик

    Спасибо за подсказку! Верно, частоту ШИМ необходимо повышать. Начал копать в эту сторону. Вот что нашел:
    https://arduino-info.wikispaces.com/Arduino-PWM-Frequency
    И видео, как раз в тему:


    Добавил резисторы на затвор, а так же согласно приведенной таблице увеличил частоту ШИМ до 31.372 kHz (на 3 и 11 пинах Arduino Uno).
    PHP:
    void setup()
    {
      Serial.begin(9600);

      TCCR2B = TCCR2B & B11111000 | B00000001; // 31372.55 Hz
      //TCCR0B = TCCR0B & B11111000 | B00000001; // 62 kHz
      pinMode(fan, OUTPUT);
      analogWrite(fan, fanspeed);
    }
    Писк исчез, т.е. эксперимент удался :) При этом таймеры Delay и Millis не пострадали. Если увеличивать частоту ШИМ (на 5 и 6 пинах) до 62 кГц, то Delay и Millis сбиваются, возможно их можно пересчитать.

    Есть ещё библиотека для этой же цели, она позволяет увеличивать ШИМ вплоть до 2 МГц:
    https://code.google.com/p/arduino-pwm-frequency-library/downloads/list
    Плюс этой библиотеке в том, что частоту ШИМ можно выставить любую в диапазоне "1Hz - 2MHz" и она так же не задевает Delay и Millis. C ней можно побаловаться.
    PHP:
    #include <PWM.h>

    int led = 3;                // the pin that the LED is attached to
    int brightness = 0;        // how bright the LED is
    int fadeAmount = 15;        // how many points to fade the LED by
    int32_t frequency = 31000; //frequency (in Hz)
    Но слишком высокую частоту выставлять не стоит, т.к. при 1 МГц кулер начинал стартовать лишь на 115 значениях ШИМ. 31 кГц хватает с головой.
    Диапазон оборотов все равно получился немного... не идеальный. Кулер стартует от 7 значения ШИМ, а полные обороты набирает на ~190 (свыше нет изменений или мне уже кажется..). Но это лучше, чем было - полное отсутствие писка и довольно широкий диапазон регулирования.
    Библиотекой пока пользоваться не буду, обойдусь одной строчкой.

    Больше 100 мкФ не давали изменять скорость оборотов кулера
    else
    не избавляли от писка.
    Как то так. Ёмкости "помогали" только там, куда я их ставил, между затвором и "-" кулера/стоком транзистора.
     
    Последнее редактирование: 25 июн 2015
    Gomez нравится это.