.TH FANCONTROL 8 "September 2009" "lm-sensors 3" .SH "نام (NAME)" fancontrol \- تنظیم خودکار و نرم‌افزاری سرعت فن .SH "خلاصه دستور (SYNOPSIS)" .B fancontrol .I [فایل_پیکربندی] .SH "توضیحات (DESCRIPTION)" دستور \fBfancontrol\fP یک اسکریپت شل برای استفاده به همراه lm_sensors است. این اسکریپت پیکربندی خود را از یک فایل می‌خواند، سپس سرعت فن‌ها را بر اساس دماها محاسبه کرده و خروجی‌های مربوطه PWM را بر روی مقادیر محاسبه‌شده تنظیم می‌کند. .SH "هشدار (WARNING)" لطفاً هنگام استفاده از قابلیت‌های کنترل فن مادربرد خود محتاط باشید؛ علاوه بر خطر آسیب به پردازنده (CPU)، در دماهای بالاتر استهلاک سایر قطعات سخت‌افزاری شما نیز افزایش می‌یابد. بنابراین اگر قصد دارید از این قطعات تا ۵۰ سال آینده استفاده کنید، \fBشاید\fP بهتر باشد اصلاً از fancontrol استفاده نکنید. همچنین به یاد داشته باشید که بیشتر فن‌ها برای کار با ولتاژ مدوله‌شده PWM طراحی نشده‌اند. در عمل به نظر نمی‌رسد این موضوع مشکل بزرگی ایجاد کند؛ فن‌ها کمی گرم‌تر می‌شوند، فقط مطمئن شوید که یک هشدار دما یا دستور خاموش‌سازی در صورت خرابی هر یک از فن‌ها تنظیم کرده‌اید، زیرا احتمالاً متوجه صدای توقف آن نخواهید شد. .SH "پیکربندی (CONFIGURATION)" برای پیکربندی آسان، اسکریپتی به نام \fBpwmconfig\fP(8) وجود دارد که به شما امکان می‌دهد فایل پیکربندی \fBfancontrol\fP را به صورت تعاملی بنویسید. علاوه بر این می‌توانید خودتان این فایل را با استفاده از اطلاعات این صفحه راهنما ایجاد کنید. از آنجا که بیشتر کاربران از اسکریپت \fBpwmconfig\fP(8) استفاده می‌کنند، ساختار فایل پیکربندی در انتها توضیح داده می‌شود. ابتدا متغیرهای مختلف موجود برای تغییر رفتار \fBfancontrol\fP شرح داده می‌شوند: .TP .B INTERVAL این متغیر مشخص می‌کند که حلقه اصلی \fBfancontrol\fP در چه بازه زمانی بر حسب ثانیه اجرا شود. .TP .B DEVPATH نگاشت دستگاه‌های کلاس hwmon به دستگاه‌های فیزیکی. این ویژگی به \fBfancontrol\fP امکان می‌دهد تا بررسی کند فایل پیکربندی همچنان به‌روز است یا خیر. .TP .B DEVNAME ثبت نام دستگاه‌های کلاس hwmon. این به \fBfancontrol\fP اجازه می‌دهد تا از به‌روز بودن فایل پیکربندی اطمینان حاصل کند. .TP .B FCTEMPS نگاشت خروجی‌های PWM به حسگرهای دما تا \fBfancontrol\fP بداند کدام حسگرهای دما باید برای محاسبه مقادیر جدید خروجی‌های مربوطه PWM استفاده شوند. می‌توان از پیشوند ! برای اجرای یک دستور به عنوان حسگر دما استفاده کرد. .TP .B FCFANS ثبت ارتباط میان یک خروجی PWM و یک ورودی فن. سپس \fBfancontrol\fP می‌تواند سرعت فن را بررسی کرده و در صورت توقف غیرمنتظره، آن را دوباره راه‌اندازی کند. .TP .B MINTEMP دمایی که در کمتر از آن، فن به حداقل سرعت تغییر وضعیت می‌دهد. .TP .B MAXTEMP دمایی که در بالاتر از آن، فن به حداکثر سرعت تغییر وضعیت می‌دهد. .TP .B MINSTART حداقل سرعتی که فن با آن شروع به چرخیدن می‌کند. باید از یک مقدار مطمئن استفاده کنید تا اطمینان حاصل شود فن حتی با فرسوده شدن نیز به چرخش درمی‌آید. .TP .B MINSTOP حداقل سرعتی که فن در آن هنوز می‌چرخد. در اینجا نیز از یک مقدار مطمئن استفاده کنید. .TP .B MINPWM مقدار PWM مورد استفاده در صورتی که دما پایین‌تر از MINTEMP باشد. به طور معمول اگر توقف کامل فن اشکالی نداشته باشد این مقدار 0 خواهد بود، یا اگر نمی‌خواهید فن هرگز متوقف شود، برابر با مقدار MINSTOP تنظیم می‌شود. اگر این مقدار تعریف نشود، به طور پیش‌فرض 0 (فن متوقف) در نظر گرفته می‌شود. .TP .B MAXPWM مقدار PWM مورد استفاده زمانی که دما بالاتر از MAXTEMP است. اگر این مقدار تعریف نشود، به طور پیش‌فرض 255 (حداکثر سرعت) خواهد بود. .TP .B AVERAGE تعداد آخرین خوانش‌های دما که برای میانگین‌گیری دما استفاده می‌شوند. این ویژگی می‌تواند برای هموار کردن جهش‌های لحظه‌ای دما به کار رود. اگر تعریف نشود، مقدار پیش‌فرض 1 است (بدون میانگین‌گیری). .PP قالب فایل پیکربندی به صورت زیر است: .IP .nf VARIABLE=chip/pwmdev=value chip/pwmdev2=value2 VARIABLE2=... .fi .PP هر متغیر در خط جداگانه قرار دارد. پس از نام متغیر علامت مساوی و جفت‌های device=value می‌آیند. این جفت‌ها شامل مسیر خروجی pwm که مقدار برای آن معتبر است، علامت مساوی و به دنبال آن مقدار بوده و با یک فاصله از هم جدا می‌شوند. مسیر می‌تواند مطلق یا نسبی باشد (از مسیر /sys/bus/i2c/devices یا /sys/class/hwmon بسته به نسخه هسته). مثال: .IP MINTEMP=hwmon0/device/pwm1=40 hwmon0/device/pwm2=54 .PP باید مقادیر دما را به صورت آزمایشی تنظیم کنید تا به نتیجه مطلوب برسید. برای راه‌اندازی اولیه استفاده از اسکریپت \fBpwmconfig\fP توصیه می‌شود. تغییرات جزئی را می‌توان با ویرایش مستقیم فایل پیکربندی بر اساس قواعد بالا انجام داد. هنگام شروع، fancontrol اطمینان حاصل می‌کند که تمام دستگاه‌های ارجاع‌داده‌شده وجود داشته و با وضعیت آن‌ها در زمان پیکربندی مطابقت دارند، و اینکه تمام فایل‌های sysfs مورد اشاره وجود دارند. در غیر این صورت، با این فرض که فایل پیکربندی ممکن است با درایورهای بارگذاری‌شده هسته ناهماهنگ باشد، بلافاصله خارج می‌شود. .SH "الگوریتم (THE ALGORITHM)" برنامه \fBfancontrol\fP ابتدا پیکربندی خود را می‌خواند، آن را در آرایه‌ها ذخیره می‌کند و حلقه تابع اصلی خود را به اجرا درمی‌آورد. این تابع دماها و سرعت فن‌ها را از فایل‌های درایور هسته دریافت کرده و سرعت‌های جدید را بسته به تغییرات دما محاسبه می‌کند، اما تنها در صورتی که دما بین MINTEMP و MAXTEMP باشد. پس از آن، مقادیر جدید در خروجی‌های PWM نوشته می‌شوند. در حال حاضر سرعت به صورت خطی با افزایش دما بالا می‌رود. به این ترتیب در بهترین حالت، در بیشتر اوقات صدای فن‌های خود را نخواهید شنید. .SH "همچنین ببینید (SEE ALSO)" pwmconfig(8), sensors(1). .SH "نویسندگان (AUTHORS)" .PP Marius Reiner