Bt-teh.ru

БТ Тех
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Настройка авторегулирования оборотов вентиляторов

Настройка авторегулирования оборотов вентиляторов

В любом современном компьютере есть датчики температуры. Датчики встраиваются в процессоры, материнские платы, диски, видеокарты. Кроме этого, на многих материнских платах есть возможность наблюдать за скоростью и управлять скоростью вращения вентиляторов. Используя специальный софт можно связать одно с другим. Чтобы, только при повышении температуры вентиляторы начинали крутиться быстрее.

Я не нашёл для этой задачи софта с нормальным графическим интерфейсом. Есть только консольные программы. Благо, они дружелюбны. Настройка производится в режиме мастера. Вам задаются вопросы, вы выбираете варианты ответов. У меня настройка заняла 5 минут.

Руководство неоднократно мною использовано, в том числе в Elementary OS 5 и Ubuntu 20.04.

Установка необходимого софта:

Запуск автоматического определения имеющихся в компьютере датчиков:

При этом сначала будут задаваться вопросы, хотим ли мы тестировать те или иные типы существующих в природе чипов. В принципе, можно не вникать, что за железо нам предлагают для тестирования. Можно нажимать всегда y и тестировать всё подряд.

В конце будет предложено сохранить найденное в файл конфигурации. Сделайте это, если результат тестирования вас удовлетворит, если будут найдены хоть какие-нибудь датчики.

Результат для моего компьютера:

Теперь можно перегрузить фоновый сервис, чтобы изменения вступили в силу:

После посмотреть показания всех найденных датчиков:

Результат для моего компьютера:

Важно, чтобы у вас в результатах показывались обороты вентилятора(ов)!

Если таковых нет, то продолжать настройку дальше смысла нет. Управлять нечем. Возможно вы сделали не полный поиск по всевозможным вариантам оборудования. Тогда попробуйте его повторить. Если не поможет, то вам не повезло. Либо в софте нет поддержки вашего типа оборудования. Либо у вас железо, которое не имеет соответствующих датчиков и управления.

У меня к материнской плате подключен только один вентилятор, из трёх возможных. Этот единственный вентилятор на процессоре. Им я и хотел управлять. По умолчанию он был включен на полные обороты. Скорость вращения видна в выдаче.

Теперь обращаемся к программе, которая попытается управлять скоростью вращения вентиляторов. Она же и произведёт, в случае необходимости, настройку автоматического управления скоростью.

Не торопитесь, читайте, что пишет и спрашивает программа. Делает она это, к сожалению, на английском. Но текст можно копировать, например, в Google-переводчик. Важно понимать, что вы делаете.

Результат для моего компьютера:

Теперь комментарии к моему примеру.

Смысл первого этапа в том, что программа видит, какие есть датчики оборотов. Каждый датчик/вентилятор она пытается затормозить на 5 секунд. Нужно подтвердить – было снижение оборотов или нет. Если снижение вы подтверждаете, то программа для этого датчика дополнительно предлагает попробовать плавную регулировку оборотов.

В моём случае один вентилятор и 3 датчика. Первым программа попыталась управлять, но результата никакого не было. Управление вторым датчиком имело результат — обороты снизились. Дополнительно произведён тест плавного регулирования оборотов. От тестирования третьего датчика я отказался.

Второй этап — это настройка автоматического регулирования оборотов. Я выбрал из списка единственный свой датчик, который хотел настроить. Другие в списке не показались, ведь для них я не подтвердил, что ими удалось управлять.

Программа перечисляет все имеющиеся датчики температуры и спрашивает, к какому из них привязать настраиваемый в данный момент регулятор оборотов.

Вот тут было довольно неудобно. Показываются коды датчиков температуры и сами температуры. Можно лишь приблизительно ориентироваться, какие из них какие. А ещё надо сообразить, к чему лучше привязываться.

У меня управление оборотами вентилятора, который на процессоре. Не составило труда определить датчики температуры для каждого из четырех его ядер. Ещё, по температуре я сразу узнал датчик видеокарты. Но это всё не то. Лучше всего для мой задачи подошёл бы какой-нибудь общий датчик температуры процессора. Позднее я его все же идентифицировал.

Очевидно, что лучше выбирать тот датчик температуры, который те только подходит по смыслу, но и быстро реагирует на изменения температуры процессора, чтобы быстрее подстраивать под неё обороты вентилятора. Так, например, показания датчика, который расположен где-то на поверхности материнской платы, да ещё и в далеке от процессора — это неприемлемый выбор.

В общем, тут выбор у каждого свой. Я вначале выбрал почти наугад, но позднее потестировал, как всё это работает при нагрузке. Оказалось, что выбор сделан правильный. Нагружая процессор, температура выбранного датчика меняется довольно быстро и обороты вентилятора при этом начинали постепенно расти.

В случае необходимости можно изменить выбор. Это можно сделать вручную, просто отредактировав файл конфигурации /etc/fancontrol . Ну или запустить снова мастер настройки. Я рекомендую второй вариант. Он значительно проще и последующие разы отвечать на вопросы можно практически не задумываясь. Времени уходит минимум.

В мастере настройки я указал, что до температуры 40°C обороты вентилятора должны быть минимальны. Максимальные обороты при температуре 60°C. Далее выбрал сохранение результатов и выход.

Чтобы настройки начали работать нужно запустить фоновый сервис:

У меня при этом сразу наступила тишина.

Ещё команды, которые стоит знать:

Соответственно, остановка и перезапуск фонового сервиса fancontrol.

Проблема

У меня иногда случалось так, что компьютер запускался, а вентиляторы продолжали крутиться на полных оборотах. Перезапуск компьютера обычно решал проблему. Ещё можно было просто перезапустить службу fancontrol .

Читать еще:  Как отрегулировать фурнитуру пластикового окна maco

В итоге я просто добавил задержку 5 секунд перед запуском службы. Видимо, какие-то компоненты системы не успевали активироваться/прогрузиться перед запуском службы.

Управление кулером в Ubuntu при помощи fancontrol

После покупки минисервера появилась необходимость контролировать обороты кулеров, чтобы убрать вообще издаваемый шум.

Для того чтобы это сделать необходимо поставить пакет lm-sensors.
apt-get install lm-sensors

В папке /etc/init.d/ появляется новый скрипт fancontrol который периодически опрашивает датчики и если необходимо меняет обороты.

Для получения данных об оборотах куллеров необходимо выполнить комманду:

# sensors
it8718-isa-0290
Adapter: ISA adapter
in0: +1.17 V (min = +0.00 V, max = +4.08 V)
in1: +1.82 V (min = +0.00 V, max = +4.08 V)
in2: +3.39 V (min = +0.00 V, max = +4.08 V)
in3: +4.08 V (min = +0.00 V, max = +4.08 V) ALARM
in4: +3.15 V (min = +0.00 V, max = +4.08 V)
in5: +0.03 V (min = +0.00 V, max = +4.08 V)
in6: +1.23 V (min = +0.00 V, max = +4.08 V)
in7: +4.08 V (min = +0.00 V, max = +4.08 V) ALARM
in8: +4.08 V
fan1: 537 RPM (min = 0 RPM)
fan2: 891 RPM (min = 0 RPM)
fan3: 0 RPM (min = 0 RPM)
temp1: -53.0°C (low = +127.0°C, high = +127.0°C) sensor = thermistor
temp2: -2.0°C (low = +127.0°C, high = +127.0°C) sensor = thermistor
temp3: +20.0°C (low = +127.0°C, high = +90.0°C) sensor = thermal diode
cpu0_vid: +0.000 V
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +47.0°C (high = +86.0°C, crit = +100.0°C)
coretemp-isa-0001
Adapter: ISA adapter
Core 1: +47.0°C (high = +86.0°C, crit = +100.0°C)

Fan1: обороты кулера процессора.

Fan2: обороты внешнего кулера, который подключается отдельно (у меня отдельно подключена 120-тка)

Для управления используются файлы /sys/class/hwmon/hwmon0/device/fan1_input и /sys/class/hwmon/hwmon0/device/fan2_input

Взависимости от числа записанного в файле меняется скорость вращения (и шума) кулера.

Для того чтобы включить кулер на «полную» можно сделать так:
echo «255» > /sys/class/hwmon/hwmon0/device/fan1_input

Чтобы у знать какое число отвечает за какие обороты необходимо выполнить команду pwmconfig

При запуске команды запустится утилита которая выдаст список оборотов и число которое необходимо посылать в файл /sys/class/hwmon/hwmon0/device/fan1_input, такого плана:
hwmon0/device/pwm1
PWM 255 FAN 1713
PWM 240 FAN 1713
PWM 225 FAN 1642
PWM 210 FAN 1527
PWM 195 FAN 1400
PWM 180 FAN 1285
PWM 165 FAN 1153
PWM 150 FAN 1036
PWM 135 FAN 902
PWM 120 FAN 784
PWM 105 FAN 829
PWM 90 FAN 1106
PWM 75 FAN 0
Fan Stopped at PWM = 75

Как показывает вывод самые большие обороты у кулера при значении 255, а если передать что-то ниже 75 кулер остановится вообще.

Теперь необходимо настроить файл которые отвечает за обороты и температуру (взаимосвязь температура = обороты) /etc/fancontrol :

У меня он имеет вид:
INTERVAL=3
FCTEMPS=hwmon0/device/pwm1=/sys/bus/platform/drivers/coretemp/coretemp.0/temp1_input hwmon0/device/pwm3=/sys/bus/platform/drivers/coretemp/coretemp.0/temp1_input
FCFANS= hwmon0/device/pwm1=hwmon0/device/fan1_input hwmon0/device/pwm3=hwmon0/device/fan2_input
MINTEMP=hwmon0/device/pwm1=30 hwmon0/device/pwm3=30
MAXTEMP=hwmon0/device/pwm1=60 hwmon0/device/pwm3=60
MINSTART=hwmon0/device/pwm1=120 hwmon0/device/pwm3=120
MINSTOP=hwmon0/device/pwm1=75 hwmon0/device/pwm3=0

Управление кулером в системе Linux

Эта функциональность зависит как от вашего оборудования, так и от программного обеспечения. Если ваше оборудование не поддерживает управление скоростью вращения вентилятора или не отображает их в ОС, очень вероятно, что вы не сможете использовать это решение. Если это так, но программное обеспечение (как ядро) не знает, как его контролировать, вам не повезло.

Но, если все в порядке то мы может приступить к тому, чтобы рассказать вам как управлять кулером в Linux.

Установка LM-Sensors

Установите lm-sensors и пакеты fancontrol.

Или с помощью команды для установки LM-Sensors в системе Ubuntu или Debian:

sudo apt-get install lm-sensors

sudo yim installlm-sensors

Для Gentoo нужно использовать эту команду:

sudo emerge -av lm-sensors

Настройка lm-sensors

Управление кулером в Linux является очень простым. Но, перед эти нужно правильно установить и настроить программное обеспечение.

  • В терминальных типах датчики sudo — обнаруживают и отвечают ДА всем YES / no questions.
  • В конце обнаружения датчиков отобразится список модулей, которые необходимо загрузить.

Введите «Yes», чтобы обнаружить датчики, вставить эти модули в / etc / modules или отредактировать / etc / modules самостоятельно.

Запустите sudo service module-init-tools restart. Это действие прочитает изменения, внесенные вами в / etc / modules на шаге 3, и вставьте новые модули в ядро.

Примечание. Если вы используете Ubuntu 13.04 или выше, эта команда 3-го шага должна быть заменена запуском sudo service kmod start.

Установка Fancontrol

Управление оборотами вентилятора вашего кулера происходит с помощью специальной программы. Эта программа очень просто устанавливается. Делается это также через командную строку как и в способе выше. Чтобы установить программу для операционной системы Ubuntu или Debian, нужно использовать эту команду:

sudo apt-get install fancontrol

для Fedora или RedHat

Настройка Fancontrol

В терминале типа sudo pwmconfig. Этот скрипт остановит каждый вентилятор в течение 5 секунд, чтобы узнать, какие вентиляторы можно контролировать, с помощью ручного управления PWM. После того, как скрипт будет проходить через все вентиляторы, вы можете настроить, какой вентилятор соответствует температуре.

В моем случае я установил интервал до 2 секунд. Если говорить про управление кулером в Linux то можно отметить автозапуск настроек. Об этом мы поговорим в следующем пункте нашего руководства.

Читать еще:  Регулировка закрытия пластиковых окон на зиму

Настройка службы fancontrol

Запустите sudo service fancontrol start. Это также приведет к автоматическому запуску службы fancontrol при запуске системы. Это сделает управление кулером в Linux полностью автоматизированным после указанных настроек.

Ручное управление оборотами кулера

Если вы хотите организовать управление оборотами кулера через терминал вручную, каждый раз вводя команду — то, мы расскажем как это сделать. Для начала введите команду для отключения Fancontrol:

sudo systemctl stop fancontrol

Далее просмартиваем список доступных устройств и выбираем нужное:

$ ls /sys/class/hwmon/hwmon1/device/ | grep pwm

Здесь будет значение pwm1 или pwm2 — это файлы кулеров. Далее, нужно разрешить ручное управление вентилятором Linux, например для pwm2:

root $ echo 1 >>/sys/class/hwmon/hwmon1/device/pwm2_enable

Включаем кулер на всю мощь с помощью этой команды:

root $ echo 255 >> /sys/class/hwmon/hwmon1/device/pwm2

а теперь давайте сведем обороты в стандартный режим:

root $ echo 2 >> /sys/class/hwmon/hwmon1/device/pwm1

Выводы

Управление кулером в Linux является очень простым. Мы рассказали как это можно сделать с помощью программ самостоятельно через терминал. Но, если у вас есть вопросы — задавайте их в комментарии. Перед написание обязательно укажите каким дистрибутивом вы пользуетесь.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Как контролировать скорость вентилятора?

Как я могу контролировать скорость вращения вентилятора компьютера?

На Windows есть замечательная программа под названием SpeedFan .

Примечание перед началом:

Эта функциональность зависит как от вашего оборудования, так и от программного обеспечения. Если ваше оборудование не поддерживает элементы управления скоростью вентилятора или не показывает их ОС, очень вероятно, что вы не сможете использовать это решение. Если это так, но программное обеспечение (также известное как ядро) не знает, как им управлять, вам не повезло.

    Установите пакеты lm-sensor и fancontrol .

Настроить lm-сенсоры

  1. В терминале введите sudo sensors-detect и ответьте ДА на все ДА / нет вопросов.
    (Потенциально, это может повредить вашу систему или вызвать сбой системы. Для многих систем это безопасно. Нет никакой гарантии, что этот процесс не повредит вашей системе навсегда, я просто думаю, что вероятность такого критического сбоя действительно очень мала Сохранение всей вашей работы для возможных сбоев / зависаний / перезапусков перед обработкой конфигурации системы — это всегда хорошая идея. Если вы не уверены, прочитайте комментарии и попробуйте поискать в Интернете и получить общий обзор, прежде чем ДА — все, возможно, отборных с вашими ДА-есами все равно будет достаточно)
  2. В конце обнаружения датчиков будет отображен список модулей, которые необходимо загрузить. Введите «yes», чтобы датчики-детекторы вставили эти модули в / etc / modules, или отредактируйте / etc / modules самостоятельно.
  3. Беги sudo service module-init-tools restart . Это прочитает изменения, которые вы сделали /etc/modules в шаге 3, и вставит новые модули в ядро.
    • Примечание . Если вы работаете в Ubuntu 13.04 или более поздней версии, эту команду третьего шага следует заменить на sudo service kmod start .

Настроить фанконтроль

  1. В терминальном типе sudo pwmconfig . Этот сценарий остановит каждый вентилятор на 5 секунд, чтобы выяснить, какими вентиляторами можно управлять с помощью какого ШИМ. После прохождения скрипта через все вентиляторы вы можете настроить, какой вентилятор соответствует какой температуре.
  2. Вам нужно будет указать, какие датчики использовать. Это немного сложно. Если у вас есть только один вентилятор, обязательно используйте датчик температуры для вашего ядра, чтобы основывать скорость управления вентилятором.
  3. Запустите подсказки и сохраните изменения в расположении по умолчанию.
  4. Внесите коррективы для точной настройки /etc/fancontrol и используйте их sudo service fancontrol restart для внесения изменений. (В моем случае я установил интервал в 2 секунды.)

Настройка FanControl службы

  1. Беги sudo service fancontrol start . Это также заставит службу fancontrol запускаться автоматически при запуске системы.

В моем случае /etc/fancontrol для процессора я использовал:

Настройки для hwmon0 / device / pwm2:
(зависит от hwmon0 / device / temp2_input) (управляет hwmon0 / device / fan2_input)

а в другой системе это:

Вот некоторая полезная информация о настройках и что они действительно делают

Если у вас есть ThinkPad , есть программное обеспечение, thinkfan которое делает именно это. Как видно из названия, оно специально сделано для ThinkPads ( thinkpad_acpi ).

Программное thinkfan обеспечение доступно в стандартных репозиториях Ubuntu, но для его настройки требуется несколько шагов.

Вот простое пошаговое руководство:

(в основном это переведенная версия этого немецкого руководства: http://thinkwiki.de/Thinkfan )

Соответствующая информация из почты:

Шаг 1. Установите программное обеспечение thinkfan и датчики:

Шаг 2. Убедитесь, что демон управляет вентилятором, отредактировав файл thinkpad.conf:

добавив следующую строку:

Шаг 3. Сделайте так, чтобы демон автоматически загружался при запуске, отредактировав файл:

убедившись, что клавиша СТАРТ установлена ​​на да, то есть должна быть строка, которая говорит:

Шаг 4. Определите датчики вашего ноутбука:

и просто выбирайте ответы по умолчанию всякий раз, когда вам будет предложено нажать Enter.

Шаг 5. Загрузите новые модули. В Ubuntu 13.10 это сделано:

в то время как для предыдущих версий, таких как 13.04, вместо этого вам нужно будет выполнить:

Шаг 6. Определите, какие датчики используются:

(те, которые указывают 0 градусов, не используются, я не знаю, почему они тоже «обнаружены»). Помните, какие из них используются.

Читать еще:  Выключатель с регулировкой яркости схема подключения

Шаг 7. Узнайте полные пути этих датчиков:

Вывод должен быть списком путей, таких как / sys / devices / .

Шаг 8. Скопируйте и вставьте пути к датчикам в файл конфигурации /etc/thinkpad.conf. Для этого сначала откройте файл:

Там уже должна быть строка, как

(# -символ означает, что эта строка закомментирована). Добавьте строку, начинающуюся с датчика (без символа #) и скопируйте и вставьте первый датчик. Повторите это, если у вас есть более одного датчика. Например, на моей машине вывод в шаге 7 дает

В моей машине используются те, которые указаны в первой и последних двух строках, поэтому я добавил три строки:

Шаг 9. Наконец, мы можем установить уровни скорости вентилятора в файле конфигурации. Откройте файл /etc/thinkpad.conf, если он еще не был открыт.

Уровни вентиляторов, которые я использую на ThinkPad X201:

Последняя строка обеспечивает полную скорость вращения вентилятора (127 = «отключено», т.е. не регулируется). Вы можете играть с этими уровнями, чтобы соответствовать вашим потребностям / желаниям, но ПОЖАЛУЙСТА, БУДЬТЕ ОСТОРОЖНЫ!

Шаг 10. Перезагрузка. Все должно работать сейчас. Чтобы проверить, правильно ли работает Thinkpad, используйте

который запускает thinkfan в подробном режиме. Возможно, вы захотите сначала остановить демон thinkfan:

Очень высокая скорость вращения вентилятора на Ubuntu 18.04

Я сделал новую установку Ubuntu 18.04 вместе с Windows 10. На Ubuntu один из моих поклонников чрезвычайно высок, хотя температура в порядке, и этого не происходит в Windows. Я пробовал некоторые из решений, предложенных на этом форуме, без успеха.

Тот, у кого проблема, кажется, nct6775 / fan2, по крайней мере, он работает только на +1155 об / мин, согласно программе HardInfo. Моя материнская плата ASUS H81M-A.

3 ответа

Типичные шаги для настройки fancontrol:

  • Запуск sensors-detect , чтобы убедиться, что у вас есть правильные модули и обновления /etc/modules ( /etc/sysconfig/lm_sensors on RH), чтобы иметь запись nct6775.
  • Запуск pwmconfig для тестирования и настройки каждого вентилятора и создания файла /etc/fancontrol .

Известны проблемы, когда иногда ионы hwmon меняются между ботинками, оставляя ваших поклонников вне контроля. Для этого вы вручную отредактируете файл /etc/fancontrol , чтобы включить полный путь каждого pwm и заменить id [[:print:]]* следующим образом: /sys/devices/platform/nct6775.656/hwmon/hwmon[[:print:]]*/pwm1

Это фактические пути в файловой системе, которые вы можете просмотреть, чтобы получить представление о том, что доступно.

Вам также может потребоваться отредактировать /etc/sensors3.conf , мне пришлось добавить некоторые вещи для ASUS Z97, я разместил эти данные на этот поток .

Здесь могут быть две вещи, и для этого есть две вещи, которые вы можете сделать / попробуйте.

1. Проверьте настройки BIOS.

некоторые настройки можно найти / найти только в BIOS, один из этих параметров, который можно найти в BIOS, — это настройки вентилятора, вы можете проверить здесь, если там что-то не так.

2. Датчик сломался

Возможно, что датчик вентилятора мог сломаться, я знаю, что вам нужно проверить это с помощью GUI с Ubuntu и Windows, поэтому я объясню оба.

Ubuntu

Чтобы проверить свой датчик на Ubuntu, вам необходимо установить hardinfo , используя команду sudo apt-get install hardinfo , с помощью которой вы можете увидеть, нормально ли или нет.

Чтобы проверить ваш датчик на Windows, вам необходимо установить Speedfan, который можно найти здесь . он покажет вам температуры, которые ваши вентиляторы читают, и скорость ваших поклонников

(обратите внимание: прошло некоторое время с тех пор, как я использовал эти программы, чтобы они были разными, но я их помню)

Я надеюсь, что это решит вашу проблему, потому что это сделало для меня

Я долго боролся с скоростью вращения вентилятора и тепловыми проблемами, прежде чем нашел tlp , который решил все мои проблемы. Вы можете узнать больше здесь :

TLP предоставляет вам преимущества расширенного управления питанием для Linux без необходимости понимать каждую техническую деталь. TLP поставляется с конфигурация по умолчанию, уже оптимизированная для работы от батареи, поэтому вы можете просто установите и забудьте об этом. Тем не менее TLP очень настраивается для выполняйте свои конкретные требования.

Установка является предсказуемой

Конфигурация автоматическая, и мне никогда не приходилось менять ее.

Если tlp сам по себе не решает всех ваших проблем с температурой, вы можете предпринять определенные шаги для ASUS Ноутбуки :

Обзор модулей ядра

  • asus-nb-wmi — это модуль ядра, который включен в основное ядро ​​Linux и автоматически загружается в ноутбуки Asus. Это позволит контролировать только один вентилятор, и если есть второй вентилятор — у вас не будет никаких средств контроля над ним. Черный список этого модуля предотвратит работу подсветки клавиатуры.
  • asus_fan — это модуль ядра, который позволяет контролировать обоих вентиляторов на некоторых старых ноутбуках Asus. Не работает с последними моделями.

Для себя после установки tlp я смог удалить пару программ управления вентилятором, с которыми я изо всех сил пытался настроить свой ноутбук. Однако у меня нет ASUS, поэтому вам может понадобиться нечто большее, чем просто tlp .

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector