- רכיבים נדרשים:
- הסבר עבודה:
- הסבר מעגל:
- הסבר על תכנות:
- עיצוב מעגלים ו- PCB באמצעות EasyEDA:
- חישוב והזמנת PCB באופן מקוון:
לעתים קרובות אנו רואים תנודות מתח באספקת החשמל בביתנו, העלולות לגרום לתקלה במכשירי החשמל הביתיים שלנו. כיום אנו בונים מעגל הגנה על מתח נמוך ונמוך, אשר ינתק את אספקת החשמל למכשירים במקרה של מתח גבוה או נמוך. זה יציג גם הודעת התראה על 16x2 LCD. בפרויקט זה השתמשנו במיקרו-בקר PIC כדי לקרוא ולהשוות את מתח הכניסה למתח הייחוס ולבצע את הפעולה בהתאם.
הקמנו מעגל זה על גבי PCB והוספנו מעגל נוסף על PCB לאותה מטרה, אך הפעם באמצעות מגבר Op LM358 (ללא מיקרו-בקר). למטרת הדגמה, בחרנו במגבלת מתח נמוך כ -150 וולט ובמגבלת מתח גבוהה כ- 200 וולט. כאן בפרויקט זה, לא השתמשנו בשום ממסר לניתוק, רק הדגמנו אותו באמצעות LCD, בדקו את הווידיאו בסוף מאמר זה. אך המשתמש עשוי לחבר ממסר עם מעגל זה ולחבר אותו ל- GPIO של PIC.
בדוק עוד כאן את פרויקטי ה- PCB האחרים שלנו.
רכיבים נדרשים:
- מיקרו-בקר PIC PIC18F2520
- PCB (הוזמן מ- EasyEDA)
- IC LM358
- מחבר מסוף 3 פינים (אופציונלי)
- LCD בגודל 16x2
- טרנזיסטור BC547
- נגד 1k
- נגד 2k2
- נגד 30K SMD
- SMD 10k
- קבלים - 0.1uf, 10uF, 1000uF
- בסיס IC 28 פינים
- בורגסטיות זכר / נקבה
- 7805 וסת מתח - 7805, 7812
- מתכנת Pickit2
- לד
- דיודת זנר- 5.1v, 7.5v, 9.2v
- שנאי 12-0-12
- קריסטל 12 מגה-הרץ
- קבלים 33pF
- וסת מתח (וסת מהירות מאוורר)
הסבר עבודה:
בכך מעגל המתח המנותק הגבוה והנמוך, יש לנו לקרוא את מתח AC באמצעות מייקרו-בקר PIC בעזרת שנאי, מיישר גשר & מעגל מחלק מתח ומוצג LCD 16x2. לאחר מכן השווינו את מתח ה- AC עם הגבולות שהוגדרו מראש והצגנו את הודעת ההתראה על גבי ה- LCD בהתאם. כמו אם מתח נמוך מ -150 וולט אז הראינו "מתח נמוך" ואם מתח הוא מעל 200 וולט אז הצגנו טקסט "מתח גבוה" על גבי ה- LCD. אנו יכולים לשנות מגבלות אלה בקוד PIC שניתן בסוף פרויקט זה. כאן השתמשנו בווסת המאוורר כדי להגדיל ולהפחית את המתח הנכנס לצורך הדגמה בסרטון.
במעגל זה, הוספנו גם מעגל הגנה על מתח נמוך ומתח פשוט ללא שימוש במיקרו-בקר כלשהו. במעגל פשוט זה השתמשנו במשווה LM358 להשוואת מתח הכניסה וההתייחסות. אז הנה לנו שלוש אפשרויות בפרויקט זה:
- מדוד והשווה את מתח ה- AC בעזרת שנאי, מיישר גשר, מעגל מחלקי מתח ומיקרו-בקר PIC.
- איתור מתח מתח ומתחת באמצעות LM358 בעזרת שנאי, מיישר ומשווה LM358 (ללא מיקרו-בקר)
- זיהוי מתח ומתח על ידי שימוש ב- LM358 משווה והזנת הפלט שלו למיקרו-בקר PIC לצורך ביצוע פעולה על ידי קוד.
כאן הדגמנו אפשרות ראשונה של פרויקט זה. במסגרתו רצינו את מתח כניסת ה- AC ואז המירנו אותו ל- DC באמצעות מיישר גשר ואז מיפינו את מתח ה- DC הזה ל 5 v ואז לבסוף הזינו את המתח הזה למיקרו-בקר PIC לצורך השוואה ותצוגה.
במיקרו-בקר PIC קראנו את מתח ה- DC הממופה הזה ובהתאם לערך הממופה חישבנו את מתח ה- AC הנכנס בעזרת הנוסחה הנתונה:
וולט = ((adcValue * 240) / 1023)
כאשר adcValue שווה ערך מתח כניסת DC בפיכת ADC של בקר PIC וולט הוא מתח ה- AC המיושם. כאן לקחנו 240 וולט כמתח כניסה מקסימלי.
לחלופין אנו יכולים להשתמש בשיטה הנתונה למיפוי ערך קלט DC שווה ערך.
וולט = מפה (adcVlaue, 530, 895, 100, 240)
כאשר adcValue שווה ערך מתח כניסה של DC בקר סיכה ADC של בקר PIC, 530 שווה ערך למתח DC DC מינימלי ו- 895 הוא ערך שווה ערך למתח DC מקסימלי. ו 100 וולט הוא מתח מיפוי מינימלי ו -240 וולט הוא מיפוי מקסימלי.
פירושו קלט DC 10mV בסיכה של PIC ADC שווה לערך שווה ערך ל- 2.046 ADC. אז הנה בחרנו 530 כאמצעי לערך מינימלי, המתח בסיכה ADC של PIC יהיה:
(((530 / 2.046) * 10) / 1000) וולט
2.6v אשר ימופה ערך מינימלי של 100VAC
(אותו חישוב למגבלה המרבית).
בדוק בסופו של דבר את פונקציית המפה בקוד תוכנית PIC. למידע נוסף על מעגל מחלקי מתח ומיפוי המתחים באמצעות ADC כאן.
העבודה של פרויקט זה קלה. בפרויקט זה השתמשנו בווסת מאוורר מתח AC להדגמתו. חיברנו את וסת המאוורר לכניסת השנאי. ואז על ידי הגדלת או הקטנת התנגדותו קיבלנו תפוקת מתח רצויה.
בקוד קבענו ערכי מתח מקסימאליים ומינימליים לזיהוי מתח גבוה ומתח נמוך. קבענו 200 וולט כמגבלת מתח יתר ו -150 וולט כמגבלת מתח נמוכה יותר. כעת לאחר הפעלת המעגל, אנו יכולים לראות את מתח כניסת ה- AC על גבי ה- LCD. כאשר מתח הכניסה עולה אז נוכל לראות שינויים במתח על גבי LCD ואם המתח הופך ליותר ממגבלת המתח אז LCD יתריע בפנינו על ידי "התראת מתח גבוהה" ואם המתח יורד מתחת למגבלת המתח אז LCD יזהיר אותנו על ידי הצגת " הודעת התראה על מתח נמוך. בדרך זו ניתן להשתמש בו גם כמפסק אלקטרוני.
אנו יכולים להוסיף ממסר לחיבור כל מכשירי החשמל לניתוק אוטומטי במתח נמוך או גבוה. עלינו רק להוסיף שורת קוד בכיבוי המכשיר, מתחת להודעת ההתראה של LCD המציגה קוד. בדוק כאן כדי להשתמש בממסר עם מכשירי חשמל.
הסבר מעגל:
בשינה גבוהה הגנת מעגלי מתח נמוכים, אנחנו השתמשנו-מגבר שרת LM358 שבה יש שתי יציאות מחוברות סיכות מספר 2 ו 3 של מייקרו-בקר PIC. ומחלק מתח משמש לחלוקת מתח ומחבר את הפלט שלו בסיכה מספר 4 של מיקרו-בקר PIC. LCD מחובר ב- PORTB של ה- PIC במצב 4 סיביות. RS ו- EN מחוברים ישירות ב- B0 ו- B1 וסיכות נתונים D4, D5, D6 ו- D7of LCD מחוברות ב- B2, B3, B4 ו- B5 בהתאמה. בפרויקט זה השתמשנו בשני רגולטור מתח: 7805 לאספקת מיקרו-בקר ו 7812 למעגל LM358. וגם שנאי צעד למטה 12v-0-12v משמש להורדת מתח ה- AC. שאר הרכיבים מוצגים בתרשים המעגל להלן.
הסבר על תכנות:
תכנות חלק מפרויקט זה קל. בקוד זה, עלינו רק לחשב את מתח ה- AC באמצעות מתח 0-5v ממופה שמגיע ממעגל מתח המחיצות ואז להשוות אותו לערכים מוגדרים מראש. אתה יכול לבדוק את קוד ה- PIC המלא לאחר פרויקט זה.
ראשית, בקוד כללנו כותרת והגדרנו את סיביות התצורה של מיקרו-בקר PIC. אם אתה לא חדש בקידוד PIC, למד כאן את PIC Microcontroller ואת ביטי התצורה שלו.
לאחר מכן השתמשנו בכמה תפקודים להנעת LCD, כמו בטל lcdbegin () לאתחול ה- LCD, בטל lcdcmd (char ch) למשלוח פקודה ל- LCD, בטל lcdwrite (char ch) לשליחת נתונים ל- LCD וחלל lcdprint (char * str) לשליחת מחרוזת ל- LCD. בדוק את כל הפונקציות בקוד שלמטה.
הפונקציה שלהלן משמשת למיפוי הערכים:
מפה ארוכה (ארוכה x, ארוכה ב- min, ארוכה in_max, ארוך out_min, ארוכה out_max) {החזר (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; }
פונקציה נתונה int analogRead (int ch) משמשת לאתחול וקריאת ADC:
int analogRead (int ch) {int adcData = 0; אם (ch == 0) ADCON0 = 0x03; // ערוץ adc 0 אחר אם (ch == 1) ADCON0 = 0x0b; // בחר ערוץ adc 1 אחר אם (ch == 2) ADCON0 = 0x0b; // בחר ערוץ adc 2 ADCON1 = 0b00001100; // בחר אנלוגי i / p 0,1 ו -2 ערוצים של ADC ADCON2 = 0b10001010; // זמן שוויון מחזיק זמן מכסה בזמן (GODONE == 1); // התחל ערך המרה adc adcData = (ADRESL) + (ADRESH << 8); // חנות פלט 10 סיביות ADON = 0; // adc off החזר adcData; }
קווים נתונים משמשים לקבלת דגימות ADC ולחשב את הממוצע שלהן ואז לחישוב המתח:
בעוד (1) {long adcValue = 0; int volt = 0; עבור (int i = 0; i <100; i ++) // לקיחת דוגמאות {adcValue + = analogRead (2); עיכוב (1); } adcValue / = 100; שיטת #if == 1 וולט = (((float) adcValue * 240.0) /1023.0); #else volt = map (adcValue, 530, 895, 100, 240); #endif sprintf (תוצאה, "% d", וולט);
ולבסוף הפונקציה הנתונה משמשת לנקיטת פעולה:
אם (וולט> 200) {lcdcmd (1); lcdprint ("מתח גבוה"); lcdcmd (192); lcdprint ("התראה"); עיכוב (1000); } אחרת אם (וולט <150) {lcdcmd (1); lcdprint ("מתח נמוך"); lcdcmd (192); lcdprint ("התראה"); עיכוב (1000); }
עיצוב מעגלים ו- PCB באמצעות EasyEDA:
לתכנון מעגל גלאי מתח גבוה ונמוך זה, בחרנו בכלי ה- EDA המקוון שנקרא EasyEDA. בעבר השתמשנו ב- EasyEDA פעמים רבות ומצאנו שזה מאוד נוח לשימוש בהשוואה ליצרני PCB אחרים. בדוק כאן את כל פרויקטי ה- PCB שלנו. EasyEDA היא לא רק פיתרון ההפסקה היחידה ללכידה סכמטית, סימולציה של מעגלים ותכנון PCB, אלא הם מציעים גם שירות אב-טיפוס למחשבי PCB בעלות נמוכה ושירות המקור לרכיבים. לאחרונה הם השיקו את שירות המקור לרכיבים שבו יש להם מלאי גדול של רכיבים אלקטרוניים ומשתמשים יכולים להזמין את הרכיבים הנדרשים שלהם יחד עם הזמנת ה- PCB.
תוך כדי תכנון המעגלים וה- PCB שלך, אתה יכול גם להפוך את עיצובים המעגלים וה- PCB שלך לציבוריים כך שמשתמשים אחרים יוכלו להעתיק או לערוך אותם ויהיה יכול להפיק תועלת משם, הפכנו את כל פריסות המעגל וה- PCB לציבוריות עבור מתח גבוה ונמוך זה מעגל הגנה, בדוק את הקישור הבא:
easyeda.com/circuitdigest/HIGH_LOW_Voltage_Detector-4dc240b0fde140719c2401096e2410e6
להלן תמונת המצב של השכבה העליונה של פריסת ה- PCB מבית EasyEDA, באפשרותך להציג כל שכבה (למעלה, תחתון, טופסילק, חלק תחתון וכו ') של ה- PCB על ידי בחירת השכבה בחלון' שכבות '.
אתה יכול גם לבדוק את תצוגת התמונות של PCB באמצעות EasyEDA:
חישוב והזמנת PCB באופן מקוון:
לאחר השלמת העיצוב של PCB, תוכל ללחוץ על סמל פלט הייצור לעיל. אז תיכנס לדף PCB להוריד קבצי גרבר של PCB שלך ולשלוח אותם לכל יצרן, זה גם הרבה יותר קל (וזול יותר) להזמין אותו ישירות ב- EasyEDA. כאן תוכלו לבחור את מספר ה- PCB שאתם רוצים להזמין, כמה שכבות נחושת אתם צריכים, את עובי ה- PCB, את משקל הנחושת ואפילו את צבע ה- PCB. לאחר שבחרת בכל האפשרויות, לחץ על "שמור לעגלה" והשלם את הזמנתך, ואז תקבל את לוחות ה- PCB שלך כעבור כמה ימים. המשתמש יכול גם ללכת עם ספק ה- PCB המקומי שלהם לייצר PCB באמצעות קובץ גרבר.
המסירה של EasyEDA מהירה מאוד ולאחר מספר ימים של הזמנת PCB קיבלתי את דגימות ה- PCB:
להלן התמונות לאחר הלחמת הרכיבים על גבי PCB:
כך נוכל לבנות בקלות את מעגל הגנת המתח הנמוך לביתנו. יתר על כן אתה רק צריך להוסיף ממסר כדי לחבר אליו מכשירי חשמל כלשהם, כדי להגן עליו מפני תנודות מתח. פשוט חבר את הממסר לכל סיכה למטרות כלליות של PIC MCU וכתוב את הקוד כדי שהסיכה תהיה גבוהה ונמוכה יחד עם קוד הודעת התראה LCD.