جدول المحتويات:
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
لقد قمت مؤخرًا بترقية بطاقة الرسومات الخاصة بي. يحتوي طراز GPU الجديد على TDP أعلى من وحدة المعالجة المركزية الخاصة بي ووحدة معالجة الرسومات القديمة ، لذلك أردت أيضًا تثبيت مراوح إضافية للحالة. لسوء الحظ ، يحتوي جهاز MOBO الخاص بي على 3 موصلات فقط للمروحة مع التحكم في السرعة ، ولا يمكن ربطها إلا بوحدة المعالجة المركزية أو درجة حرارة مجموعة الشرائح. قررت معالجة هذا الأمر ، من خلال تصميم وحدة التحكم في مروحة جهاز الكمبيوتر الخاص بي والتي تقرأ سرعات RPM للمراوح المثبتة بالفعل (سواء تلك المتصلة بـ MOBO والتي يتم تشغيلها بواسطة درجة حرارة وحدة المعالجة المركزية وتلك التي تبرد وحدة معالجة الرسومات) ولديها قناتان إخراج. تستخدم القناة A سرعة كل من المراوح المرتبطة بدرجة حرارة وحدة المعالجة المركزية ووحدة معالجة الرسومات لتشغيل مراوح خرج ثلاثية الأطراف بسرعة متغيرة. تستشعر القناة B سرعة مراوح وحدة معالجة الرسومات فقط وتستخدم دائرة الإخراج الخاصة بها ترانزستورًا إضافيًا يسمح بتحقيق سرعات أقل للمراوح التي تحركها (تعمل بشكل جيد مع بطاقة الرسومات شبه السلبية).
قراءة سرعة المراوح الأخرى في رأيي أسهل وأرخص من تثبيت مجسات درجة حرارة إضافية بجوار المعالجات المغطاة بمبددات الحرارة (إنها تتطلب أساسًا توصيل سلك مقياس سرعة المراوح مباشرة بدبوس متحكم).
بعض طرق التحكم في سرعات المروحة موصوفة هنا. قررت استخدام PWM منخفض التردد ، ولكن مع بعض التعديلات على الطريقة الموضحة في المقالة. أولاً ، تحتوي كل قناة على 6 صمامات ثنائية متصلة على التوالي ، والتي يمكن استخدامها لتقليل الجهد الذي يمد المروحة بالطاقة بمقدار 4-5 فولت. في هذا الإعداد ، تكون مستويات الجهد PWM ~ 8V - 12V و 0V - ~ 8V (غير متوفرة في القناة A) بدلا من 0V - 12V. هذا يقلل بشكل كبير من الضوضاء الناتجة عن المروحة. حيلة أخرى استخدمتها لجعل المروحة التي يتم التحكم فيها بهذه الطريقة أكثر صمتًا موصوفة هنا. تتطلب هذه الحيلة تركيب دائرة RC بين خرج وحدة التحكم الدقيقة وبوابة MOSFET التي استخدمتها لتبديل مستويات جهد المروحة. هذا يقلل من معدل الدوران للإشارة التي تتحكم في MOSFET ، مما يجعل بدوره اهتزاز المروحة الزاوي أثناء تغيير مستوى الجهد أقل بروزًا ، مما يقلل الاهتزاز وارتفاع الجهد.
اللوازم
الأجزاء والمواد:
- ATtiny13 أو ATtiny13A في علبة 8-PDIP
- 8 دبوس DIP المقبس
- 3x IRF530 الترانزستور
- 12x 1N4007 الصمام الثنائي (يجب أن يعمل أي ديود 1A آخر مع انخفاض الجهد بحوالي 0.7 فولت)
- مكثف كهربائيا شعاعي 220 فائق التوهج / 25 فولت
- 10 فائق التوهج / 16 فولت شعاعي كهربائيا مكثف
- مكثف قرص سيراميك 5x 100nF
- 10 كيلو 0.25 واط المقاوم
- 4x 22 كيلو 0.25 واط المقاوم
- 2x 1 كيلو 0.25 واط المقاوم
- زر التبديل اللمسي 6x6mm
- 2x 2 دبوس 2.54 مللي متر رأس دبوس ذكر مستقيم
- موصل مروحة ذكر 4 × 3 سنون (Molex 2510) ، بدلاً من ذلك ، يمكنك استخدام رؤوس دبوس عادية إذا كنت ترغب في ذلك (لقد فعلت ذلك) ، ولكن بعد ذلك يجب أن تكون أكثر حذراً عند توصيل المراوح ، وستكون الموصلات الأنثوية لتلك المراوح أقل أمانًا
- موصل Molex ذو 4 سنون ، دبابيس أنثى / ذكر (موصل طاقة AMP MATE-N-LOK 1-480424-0) ، لقد استخدمت واحدًا كان جزءًا من موليكس ذكر إلى 2x SATA محول أنثى مرفق مع بعض MOBO القديم
- كابلات توصيل 2x مع موصلات أنثى مقاس 2.54 مم (أو أغطية الموصل + دبابيس + أسلاك) ، سيتم لحامها بأسلاك مقياس سرعة الدوران لمراوح الإدخال (أو مباشرة إلى موصلاتها على ثنائي الفينيل متعدد الكلور)
- لوح مسبق (50 مم × 70 مم ، مصفوفة 18 × 24 حفرة على الأقل) ، بدلاً من ذلك ، يمكنك حفر لوح نحاسي بنفسك وحفر ثقوب
- بضع قطع من الأسلاك
- شريط عازل
- شريط رقائق الألومنيوم (إذا كنت تنوي إرفاق موصل بلوحة GPU الخلفية ، فراجع الخطوة 5)
- ورق
أدوات:
- قاطع قطري
- كماشة
- مفك البراغي
- سكين متعدد الاستخدام
- المقياس المتعدد
- محطة لحام
- جندى
- مبرمج AVR (مبرمج مستقل مثل USBasp أو يمكنك استخدام ArduinoISP
- كبلات اللوح والوصلة التي سيتم استخدامها لبرمجة متحكم خارج ثنائي الفينيل متعدد الكلور (أو أي أداة أخرى يمكنها تحقيق هذا الهدف)
الخطوة الأولى: إخلاء المسؤولية
يتطلب إنشاء هذا الجهاز استخدام أدوات متوسطة الخطورة وقد يتسبب في إلحاق الضرر أو الضرر بالممتلكات. قد تؤدي بعض الخطوات المطلوبة إلى إبطال الضمان الخاص بجهازك أو حتى إتلافه عند إجرائه بشكل غير صحيح. أنت تقوم ببناء واستخدام الجهاز الموصوف على مسؤوليتك الخاصة
الخطوة الثانية: كيف يعمل التحكم في المروحة
تستخدم القناة A مدخلين. كل مدخل من مدخلات القناة A هذه له مستوى مرتبط به ، يتيح استدعاء تلك المستويات A0 و A1. افتراضيًا ، كلا هذين المستويين هما 0. ولكل من المدخلات قيم عتبة RPM مرتبطة بهما (3 عتبات لكل إدخال). عند الوصول إلى الحد الأول ، تزداد A0 أو A1 إلى 1 ، وعندما تزيد الثانية إلى 2 ، وتعين العتبة الثالثة أحد مستويات الإدخال إلى 3. يتم دمج A0 و A1 لاحقًا (يتم إضافتهما معًا ومنعهما من تحقيق قيمة أعلى من 3) ، مما يجعل قناة الإخراج الرئيسية رقم مستوى في نطاق 0-3. يستخدم هذا الرقم للتحكم في سرعة مراوح الإخراج ، ويعني 0 أنها تعمل بواسطة 7-8 فولت (دورة التشغيل 0٪). تعني مستويات الإخراج الأعلى أن المروحة تعمل بجهد 12 فولت كامل بنسبة 33٪ أو 66٪ أو 100٪ من دورة 100 مللي ثانية أو 33 مللي ثانية (يعتمد ذلك على التردد المحدد).
تحتوي القناة B على مدخل واحد فقط (B1 ، يتم مشاركتها فعليًا مع القناة A [PB1 pin]). هناك ستة مستويات محتملة من B1 (1-6) ، والمستوى الافتراضي هو 1. توجد خمس قيم حدية قادرة على زيادة B1. يتم استخدام B1 كمستوى قناة الإخراج الرئيسي B. عندما تكون 1 ، 7-8 فولت تعمل على تشغيل مراوح الإخراج لمدة 33٪ من وقت الدورة في دورة واحدة ، في الأخرى لـ 66٪ ، لبقية الوقت يتم فصل الطاقة. المستوى 2 يعني أن 66٪ من كل دورة هي 7-8 فولت ، والباقي 0 فولت. المستوى 3 يعني أنه يتم تطبيق 7-8V باستمرار. تعني المستويات من 4 إلى 6 أن المروحة تعمل بجهد 12 فولت كامل لمدة 33٪ أو 66٪ أو 100٪ من الدورة ، أما بقية الوقت فهي 7-8 فولت.
تردد التحكم في PWM هذا افتراضيًا هو 10 هرتز. يمكن زيادتها إلى 30 هرتز عن طريق إغلاق دبابيس العبور J7.
عند الوصول إلى عتبة أعلى ، تزداد مستويات A0 و A1 و B1 على الفور. عندما تنخفض RPMs ، يتم الاحتفاظ بالمستوى لمدة 200 مللي ثانية وقد ينخفض فقط بمقدار 1 لكل 200 مللي ثانية. إنه لمنع التغيرات السريعة في تلك المستويات عندما تكون RPM لمروحة الإدخال قريبة جدًا من العتبة.
الخطوة 3: لحام المكونات الإلكترونية
قم بتوصيل جميع المكونات الإلكترونية باللوحة المسبقة (باستثناء Attiny13 ، سيتم وضعها لاحقًا داخل المقبس). استخدم الأسلاك النحاسية (يجب أن تكون الأسلاك التي يبلغ قطرها 0.5 مم من كابل UTP مثالية) لإجراء التوصيلات الكهربائية بين المكونات. إذا كنت تواجه مشكلة في دفع الأسلاك الكبيرة الخارجة من موصل Molex (AMP MATE-N-LOK) ، فيمكنك حفر ثقوب أكبر لها. إذا كنت لا ترغب في استخدام المثقاب ، يمكنك دائمًا لف المسمار عدة مرات داخل فتحات اللوحة الأولية الصغيرة. تأكد من أن الأسلاك لا تسبب أي قصر في الدائرة.
إذا كنت تفضل إنشاء PCB الخاص بك ، فأنا أقدم أيضًا ملفات.svg (أبعاد اللوحة 53.34 × 63.50 مم) و. pdf (حجم صفحة A4 ، داخل أرشيف مضغوط). يجب أن تكون الألواح النحاسية أحادية الجانب كافية ، حيث يوجد اتصال واحد فقط على الجانب الأمامي (يمكن تصنيعه بسلك) ، لذلك يتم توفير الملفات الخاصة بالجانب الأمامي بشكل رئيسي بحيث يمكن تحديد هذا الاتصال.
أوصي بشدة بتغطية الجزء الخلفي من ثنائي الفينيل متعدد الكلور ببعض المواد العازلة التي ستمنع أي دوائر قصيرة عرضية. لقد استخدمت طبقات قليلة من الورق العادي التي يتم تثبيتها على حواف ثنائي الفينيل متعدد الكلور بواسطة شرائط قليلة من الشريط العازل.
الخطوة 4: برمجة ATtiny Microcontroller
البرنامج الذي يتم تشغيله على MCU يحتوي على عدة عتبات من سرعات RPM لمراوح الإدخال. توجد هذه العتبات في بداية ملف fan_controller.c. يبدو الخط الذي يحتوي على العتبة الأولى ، وهو المسؤول عن زيادة مستوى إخراج القناة A بشكل طفيف استجابةً لمروحة input_0 التي تتجاوز 450 دورة في الدقيقة ، كما يلي:
#define A0_SPEED_0 3 // 450 دورة في الدقيقة
إذا كنت ترغب في تغيير قيمة RPM العتبة ، فأنت بحاجة إلى استبدال الرقم 3 بشيء آخر. تؤدي زيادة هذا الرقم بمقدار 1 إلى تغيير الحد بمقدار 150 دورة في الدقيقة.
الشيء الآخر الذي قد ترغب في تغييره هو تقليل تأخير مستوى الإنتاج. يمنع هذا التأخير التغييرات السريعة لمستوى الإخراج عندما تكون RPM لمروحة الإدخال قريبة جدًا من الحد الأدنى. هناك 3 خطوط تتحكم في هذا (حيث تستخدم القناة A مدخلين وتستخدم القناة B 1) وأولها يبدو كما يلي:
إذا (channel_A0_lower_rpm_ycles> 2) {
زيادة الرقم 2 سيزيد من هذا التأخير. يتم حساب التأخير في دورات 100 مللي ثانية.
ستحتاج إلى بعض البرامج لتجميع شفرة المصدر ثم شريحة البرنامج. يمكن تثبيته على توزيعة لينكس مبنية على دبيان عن طريق تنفيذ الأمر التالي:
sudo apt-get install avr-libc gcc-avr avrdude
إذا كنت تستخدم Windows ، فيمكنك محاولة تثبيت مجموعة WinAVR ، والتي تحتوي أيضًا على البرامج المطلوبة.
لتجميع شفرة المصدر ، تحتاج إلى تنفيذ هذا:
avr-gcc -mmcu = attiny13 -Os -Wall fan_controller.c -o fan_controller.out -lm
لإنشاء ملف.hex ، يلزمك نسخ هذا السطر إلى Terminal:
avr-objcopy -O ihex -R.eeprom fan_controller.out fan_controller.hex
يسمح هذا الأمر بالتحقق من مقدار الذاكرة التي سيستخدمها البرنامج (النص عبارة عن Flash ، والبيانات عبارة عن متغيرات سيتم تخزينها في Flash ثم نسخها في ذاكرة الوصول العشوائي ، و bss هي متغيرات تمت تهيئتها بقيمة 0 في ذاكرة الوصول العشوائي):
avr-size fan_controller.out
عندما يكون ملف.hex جاهزًا ، فأنت بحاجة إلى إدخال ATtiny13 في اللوح وتوصيله بالمبرمج باستخدام كبلات التوصيل. من الأفضل فصل الطاقة عن المبرمج عند توصيلها بوحدة MCU. احتفظ بتات الصمامات الافتراضية (H: FF ، L: 6A). إذا كان المبرمج الخاص بك هو USBasp ، فسيقوم هذا الأمر ببرمجة ذاكرة فلاش MCU:
avrdude -c usbasp -p t13 -B 8 -U flash: w: fan_controller.hex
-B 8 يغير سرعة الإرسال بين المبرمج و MCU (bitclock). قد تحتاج إلى تغييرها إلى قيمة أعلى إذا كنت تواجه مشاكل في الاتصال بالميكروكونترولر.
عندما تكون MCU جاهزة ، ضعها داخل مقبس DIP 8. لإزالة MCU من اللوح ، عادةً ما أقوم بخلعه باستخدام مفك البراغي ذي النصل المسطح.
الخطوة 5: توصيل المراوح بالجهاز
بصفتي مروحة Input 0 (تلك المتصلة بـ PB0) ، اخترت أحد مراوح العلبة الموصولة بـ MOBO ، والتي تختلف سرعتها باختلاف درجة حرارة وحدة المعالجة المركزية. أزلت العزل من جزء سلك مقياس سرعة الدوران بالمروحة ولحمت أحد طرفي كابل العبور به. سيتم توصيل الطرف الآخر (مع موصل أنثى 2.54 مم به) بوحدة التحكم في المروحة. إذا كان كابل العبور قصيرًا جدًا ، فقم بتمديده عن طريق لحام كابل آخر بين الكبلات المذكورة سابقًا. ثم قم بتغطية جميع الموصلات المكشوفة بشريط عازل.
يقرأ الإدخال 1 سرعة مراوح وحدة معالجة الرسومات (في حالتي ، يوجد بالفعل 3 مراوح ، ولكن يوجد موصل مروحة واحد فقط على بطاقة الرسومات PCB). لقد قمت بلحام كبل وصلة الإدخال 1 مباشرة بأحد خيوط موصل مروحة GPU المصغر 4 سنون الموجود على PCB. نظرًا لأن هذا السلك كان يقع بين PCB واللوح الخلفي ، فقد قمت بعزل اللوح الخلفي بقطعة من الورق أولاً (خاصةً لأن مادة اللوح الخلفي كانت قابلة للحام تمامًا) ثم قم بإرفاق الموصل الأنثوي للكبل بالجانب الآخر من اللوح الخلفي باستخدام شريط رقائق الألومنيوم. ثم يمكن توصيل مروحة (مراوح) وحدة معالجة الرسومات بدبوس PB1 باستخدام كبل توصيل آخر (ممتد). إذا كنت لا ترغب في لحام أي شيء على بطاقة الرسومات PCB الخاصة بك ، فيمكنك توصيل كابل التوصيل بأسلاك المروحة أو عمل محول يتم وضعه بين المروحة (المراوح) والموصل على PCB ، القرار لك.
تنقل المروحة سرعتها الحالية عبر سلك مقياس سرعة الدوران عن طريق توصيل هذا السلك بالأرض عبر مصفاة / مجمّع مفتوح مرتين لكل دورة (عادةً ما يحتوي دوار المروحة على 4 أقطاب [NSNS] يتم اكتشافها بواسطة مستشعر هول ، وينخفض خرج المروحة عندما تم الكشف عن نوع القطب). على الجانب الآخر ، يتم سحب هذا السلك عادةً إلى مستوى الجهد 3.3 فولت. إذا لم تكن متأكدًا من حصولك على السلك الصحيح ، فيمكنك استخدام مرسمة الذبذبات أو إنشاء إحدى دوائر الكشف التي يتم رسمها على الصورة الأخيرة في هذه الخطوة. أولهما يسمح لك بالتحقق من الحد الأقصى للجهد الذي يظهر في الموقع المقاس ، والثاني للتحقق من ظهور نبضات منخفضة التردد هناك.
يجب قراءة 3.3 فولت بواسطة دبابيس إدخال ATtiny على أنها حالة عالية ، ولكن إذا كانت لديك مشاكل مع هذا ، فقد تحاول تقليل الجهد الذي يشغّل MCU (سيزيد من مقاومة MOSFETs أيضًا!). لم يكن لدي أي مشاكل ، ومع ذلك ، قررت أن أدرج هذه الفكرة هنا.
عندما تكون مراوح الإدخال جاهزة ، يمكنك وضع وحدة التحكم في المروحة داخل علبة الكمبيوتر ، في المكان الذي تختاره. لقد قمت بتثبيته على جانب اثنتين من فتحات محرك الأقراص الفارغة مقاس 5.25 بوصة ، عن طريق دفعه بين الأجزاء المعدنية للحاوية ، ووضع بعض الأوراق خلفه وتثبيته في مكانه باستخدام رابط مضغوط مدفوع عبر إحدى الفتحات الكبيرة في اللوحة المسبقة وبعض الثقوب الأخرى في الخليج مقاس 5.25 بوصة. تأكد من عدم إمكانية لمس أي أجزاء معدنية من علبة الكمبيوتر لأي من الموصلات المكشوفة لوحدة التحكم في المروحة.
يمكنك الآن توصيل مراوح إخراج ثلاثية الأطراف بوحدة التحكم. سيتم ربط مراوح الإخراج المتصلة بالقناة A بكل من مراوح وحدة المعالجة المركزية ووحدة معالجة الرسومات ، وسيكون الحد الأدنى للجهد الذي سيشغلها حوالي 7-8 فولت. سيتم تشغيل المراوح الموصولة بموصلات خرج القناة B فقط بواسطة مروحة (مراوح) مبرد GPU وقد ينخفض جهدها إلى 0 فولت (ولكن فقط لمدة 66 مللي ثانية كل ثانية 100 مللي ثانية عند أدنى مستوى لمحرك الإخراج). يجب ألا يرسم المشجعون أكثر من 1A لكل قناة إخراج.
الخطوة 6: التغييرات الأخرى التي قمت بها على جهاز الكمبيوتر الخاص بي
تقوم القناة A بتشغيل مروحتين موجودتين في الجزء العلوي من حالتي. إنهما من نفس الطراز ويتم تشغيلهما بنفس الجهد ، مما يجعلهما يدوران بسرعات متشابهة جدًا. نتيجة لذلك ، ظهرت بعض النغمات المسموعة (نمط التداخل بين صوتين بترددات مختلفة قليلاً). لعلاج هذا ، قمت بتثبيت 2 من الثنائيات (واحد عادي والآخر شوتكي) في سلسلة مع أحد المشجعين. أدى هذا إلى تقليل جهد المروحة وسرعتها ، مما أدى إلى اختفاء الإيقاع.
تغيير آخر ، يتعلق بأحد هؤلاء المعجبين الذي قمت به ، هو تركيب مروحة علوية على الحائط الورقي تقع أكثر في المقدمة. والغرض منه هو منع هذه المروحة من امتصاص الهواء الذي لم يمر عبر أي من المبددات الحرارية بعد. حاولت أيضًا إنشاء جدران ورقية أخرى حالت دون امتصاص هواء عادم وحدة معالجة الرسومات إلى مبرد وحدة المعالجة المركزية. لقد خفضوا بالفعل درجة حرارة وحدة المعالجة المركزية ، ولكن على حساب تسخين وحدة معالجة الرسومات أكثر ، لذا قمت بإزالتها في النهاية.
تعديل غير عادي آخر قمت به هو إزالة مرشح الغبار عند عادم هاتين المروحتين العلويتين (في معظم الأوقات يتم دفع الهواء خارج العلبة على أي حال ، وعندما يكون جهاز الكمبيوتر الخاص بي مغلقًا ، فإن الدرج الموجود أعلى غطاء الكمبيوتر الشخصي يحميها قليلاً من الغبار). لقد قمت أيضًا بتثبيت مروحة مقاس 92 مم أمام فتحتين فارغتين بحجم 5.25 بوصة (توجد وحدة التحكم في المروحة خلفها مباشرةً). لا يتم تثبيت هذه المروحة بواسطة أي براغي ، بل تناسبها بشكل جيد بين مروحة 120 مم أسفلها ومحرك الأقراص الضوئية أعلاه (يتم تغطية أسطح كلاهما بشريط عازل لتوفير بعض الاهتزازات الملطفة).