اهلا اخي
يبدو انني سأزداذ حيرة كلما قمت بتجارب اكثر ،
قمت بوضع مصباح ( 6.5 فولت ، 300 مللي امبير ) على احد الترانسيسترات اثناء التشغيل ،،، وكانت المقاومة حوالي 10 اوك فقط ،، ولكن لم يكن المصباح يضيء ،، وفي نفس الوقت ارتفعت درجة حرارة المايكروكنترولر !!!
قمت بتغيير المقاومة الى حوالي 910 اوم ،، فاضاء الممصباح ،، ولكن الغريب انني اثناء وقت التشغيل ققمت بنزع المقاومة ( بين البوابة والمايكروكنترولرر ) ولكن المصباح لم ينطفأ وهذا يعني ان الترانسيستور يمرر قليلا من التيار حتى دون توصيل اي جهد على البوابة ،،فقمت باطفاء البور ثم تشغيله مرة اخرى فاضاء المصباح والمقاومة منزوعة !! فماذا يعني هذا !!
طبعا عندما قمت بوضع الدايود fr104 لم يتغير شيء وكذلك مع الدايود 1n4007 !! فماذا يعني هذا ؟! ( طبعا بم يتغير شيء بمعني ان المصباح لم ينطفأ ولم ترتفع درجة الحرارة في الموسفت !!
|
اولا وجود حرارة في البك لا اجد له تفسير ربما الخلل في البرنامج بما انك تستخدم لغة سي فلا اعرف البرنامج النهائي كيف سيكون لذلك انا افضل العمل بلغة الاسمبلي ماامكنني ذلك
هذا لبرنامج الذي استخدمة حاول تجريبة ولاحظ الحرارة في البك
__________________________________________________ ___________
list p=16F84A ; list directive to define processor
#include <p16F84A.inc> ; processor specific variable definitions
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _HS_OSC
;***** VARIABLE DEFINITIONS
w_temp EQU 0x0C ; variable used for context saving
status_temp EQU 0x0D ; variable used for context saving
MOTOR EQU 0X0E
CounterA EQU 0X0F
CounterB EQU 0X10
CounterC EQU 0X11
;************************************************* *********************
ORG 0x000 ; processor reset vector
goto main ; go to beginning of program
ORG 0x004 ; interrupt vector location
movwf w_temp ; save off current W register contents
movf STATUS,w ; move status register into W register
movwf status_temp ; save off contents of STATUS register
; isr code can go here or be located as a call subroutine elsewhere
movf status_temp,w ; retrieve copy of STATUS register
movwf STATUS ; restore pre-isr STATUS register contents
swapf w_temp,f
swapf w_temp,w ; restore pre-isr W register contents
retfie ; return from interrupt
main
;========seting up the ports
BANKSEL PORTB
CLRF PORTB
CLRF PORTA
MOVLW 0XFF
BANKSEL TRISA
TRIS PORTA
MOVLW 0X00
TRIS PORTB
BANKSEL PORTB
;=======================
MAIN_LOOP:
;i user port b for motor connection portb 3,4,5,6
LEFT:
MOVLW B'01000000'
MOVWF PORTB
CALL DELAY
MOVLW B'00100000'
MOVWF PORTB
CALL DELAY
MOVLW B'00010000'
MOVWF PORTB
CALL DELAY
MOVLW B'00001000'
MOVWF PORTB
CALL DELAY
GOTO MAIN_LOOP
DELAY:
;PIC Time Delay = 0.10100800 s with Osc = 4000000 Hz
movlw D'132'
movwf CounterB
movlw D'43'
movwf CounterA
loop decfsz CounterA,1
goto loop
decfsz CounterB,1
goto loop
retlw 0
END ; directive 'end of program'
__________________________________________________ ___________
يمكنك ت تشغيل المحرك حسب حاجتك
اما بالنسبة للتصرف الغريب للموسفت فهو عادي اذا فهمنا كيف يعمل فالبوابة في هذا النوع من الترانزسترات عبارة عن متسعة عند شحنها يقوم بالتوصيل وعند تفريغها يقوم بالقطع فذا ازلت اشارة التشغيل وبقيت المتسعة مشحونة فانة يبقى في حالة التوصيل لذلك نصحتك في البداية بوضع المقاومة 10 كيلو لتقوم بتفرغ الشحنة وتساعد على استقرار عمل الموسفت
وكما تلاحظ من طبيعة عمل هذه النوعية انها تعمل بشحن متسعة البوابة فعند استخدام مقاومة قليلة في السيطرة يكون زمن الشحن قليل ويصل الترانزستر الى حالة التشبع بوقت قليل وهذا يقلل من حرارتة لان مقاومتة الداخلية ستكون قليلة وبنفس الوقت عند شحنة بفولتية اعلى ستكون عملية الشحن افضل في حالة استخدمنا فولتية تشغيل محرك اكثر من 5 فولت مع ان هناك انواع من الموسفت مصممة لتجاوز هذه الحالة اي انها يمكن ان تعمل مع 5 فولت سيطرة بدون مشاكل
هذا شرح بسيط لعمل الموسفت لكن تعرف الشركات تقوم بتطوير وتعقيد عملها فقد لايكون هذا هو الحال دائما لكن لا باس من معرفة المباديء الاساسية للعمل والرجوع الى الداتا شيت الخاصة بالترانزستر لمعرفة اي خواص اضافية للترانزستر الذي تستعملة مع العلم ان بعض الشركات تنتج ترانزسترات برقم مشابة لرقم شركات اخرى بدون الالتزام بكافة المواصفات .... يعني الله المستعان ويكون التجريب العملي هو الحاسم
اما بالنسبة للدايود فلا تاثير له اذا كنت تتعامل مع مقاومة صرفة مثل المصباح بل تأثيرة يظهر مع المقاومة الحثية ولكي تفهم معنى ذلك اود ان تقوم بالتجربة البسيطة التالية التي فيها سنقوم بجمع الفولتية المحتثي التجربة كالتالي
باستخدام البك اعطي نبضات سريعة 10 ملي ثاني مثلا الى الترانزستر واستخدمه لتشغيل ملف ولبساطة العمل يمكن ان تستخدم رلي فهو اكثر امانا من حيث انه يستطيع تحمل الفولتية المستملر ولن يسبب عطل الترانزستر في حالة حدث خلل مل
الان من نقطة اتصال الترانزستر بملف الرلي اربط دايود واربط النهاية الاخرى للدايود الى متسعة وطرف المتسعة الثانى الى الارضي قيمة المتسعة مثلا 100 مايكو 50 - 100 فولت او اي قيمة المهم شوية الفولتية عالية
الان شغل الدائرة وقيس الفولتية على المتسعة ستجدها عالية وممكن ان تتلف المتسعة اذا تجاوزت قيمة تحملها لذلك لاتشغل الدائرة لوقت طويل حتى تتاكد من قيمة الفولتية
هذه الفولتية العالية تتولد بشكل مفاجيء عند فصل الترانزستر وتسبب خللا في نسب فرلتيات تحييز الترانزستر
وهذا يولد الحرارة ويضعف اداء الدائرة