תוכן עניינים:

מנורת זריחה בהירה לשליטה: 6 שלבים
מנורת זריחה בהירה לשליטה: 6 שלבים

וִידֵאוֹ: מנורת זריחה בהירה לשליטה: 6 שלבים

וִידֵאוֹ: מנורת זריחה בהירה לשליטה: 6 שלבים
וִידֵאוֹ: Как подключить люстру. Установка люстры 2024, יולי
Anonim
מנורת זריחה בהירה לשליטה
מנורת זריחה בהירה לשליטה
מנורת זריחה בהירה לשליטה
מנורת זריחה בהירה לשליטה

האם התעוררת פעם בשבע, השעה הרגילה שאתה צריך להתעורר לעבודה, ומצאת את עצמך בחושך? החורף הוא תקופה איומה, נכון? אתה צריך להתעורר באמצע הלילה (אחרת למה כל כך חשוך?), לקרוע את עצמך מהמיטה ולשלוח את גופך המודע למחצה למקלחת.

פרויקט זה נועד לפתור את אחת הסוגיות - חושך בוקר.

יש הרבה מנורות זריחה זולות בסביבה, אבל כולן בעלות צריכת חשמל נמוכה וחיוורות. הם דומים יותר למנורת לילה, שאמורה לגרום לך לישון טוב יותר. בכלל לא מה שאני רוצה.

יחד עם זאת, רק הדלקת האור הבהיר תעיר אותך מיד, אך לא בעדינות מספיק. מה שאני רוצה זה שילוב של שתי הגישות - להאיר עם בהירות נמוכה, לאט לאט להגיע למלוא המהירות, ואז אזעקה אמיתית מופעלת ואתה כבר לא כל כך ישנוני. נוסיף לזה קצת שיר ציפורים ואתה מתעורר בגן עדן כל בוקר!

שלב 1: מערך מנורה

מערך מנורות
מערך מנורות
מערך מנורות
מערך מנורות

קודם כל, אנחנו צריכים את המנורה עצמה. יש לי חדר די גדול עם קירות ותקרה לבנים, אז הלכתי על 7 מנורות LED GU10, משהו כמו 6W כל אחת, יותר מ 40W של כוח טהור! זה מספיק כדי לגרום לך להרגיש שכבר היום. כמו כן הוא יכול לשמש כתאורת חדרים רגילה במהלך היום.

זה לא ממש משנה איך מרכיבים אותו, באילו מנורות אתה משתמש עם אילו שקעים. כל מה שחשוב - אלה חייבות להיות מנורות שניתן לעמעם!

במקרה שלי, יש לי קרש עץ עם 7 שקעי GU10 מחוברים, כולם מחוברים יחד. אכניס אותו לקופסת פלסטיק מאוחר יותר.

שלב 2: תיאוריית עמעום

תיאוריית עמעום
תיאוריית עמעום

בתיאוריה אין הבדל בין תיאוריה לפרקטיקה. בפועל יש.

שליטה על דימר מ- ESP32/Arduino נראתה לא פשוטה כמו שדמיינתי. קיבלתי אחד ממודולי דימר האור של RobotDyn AC. היצרן מציע ספרייה לשם כך. זה לא עובד ב- ESP32 (וזה ממש קשה להסתגל, כי זה משתמש בהרבה גישת רישום ספציפית ל- ATMega ברמה נמוכה), מעין עבודות על Arduino Nano, ונותן הבהוב נורא על בהירות נמוכה באמצע. זו הסיבה שבזבזתי זמן מה לחקור כיצד הכל עובד ולעשות את הדרך שלי.

קצת תיאוריה

מודול הדימר שנבחר משתמש ב- TRIAC פופולרי מאוד: BTA16. יש הרבה מאמרים בנושא. אנסה לסכם זאת כאן.

TRIAC הוא מודול שיכול להעביר מתח קלט חיובי או שלילי ליציאה, או יכול לחסום אותו. כברירת מחדל זה חוסם הכל. על מנת לפתוח אותו, עלינו לתת לו אות גבוה על כניסת השער עבור 100 אותנו. אז הוא יישאר פתוח עד שהזרם יורד לאפס, מה שקורה כאשר מתח כניסה משנה את הסימן, וחוצה מתח אפס. ואז במחזור הבא עלינו לעשות עוד דופק של 100 us וכן הלאה. על ידי בחירת מתי לתת דופק, אנו שולטים בהירות: עשה זאת כבר בהתחלה, וזה יהיה קרוב ל -100% העברת הספק. בצע זאת מאוחר יותר וזה יתעמעם. בדוק את התרשים למעלה, והסבר אותו.

על מנת ליצור פולסים באותה נקודה של המחזור, עלינו לדעת בדיוק מתי הוא מתחיל. לכן מודול העמעם כולל גלאי אפס-קרוס מובנה. הוא רק מעלה אות (אותו נתפוס כפרעת חומרה בארדואינו) בכל פעם שהמתח חוצה את האפס.

שלב 3: תרגול עמעום

תרגול עמעום
תרגול עמעום

כן, כך היית מתעורר, אם למנורה שלך אין עמעום ומכניס את כל 40W העוצמה לעיניים המנומנמות שלך.

בעיות נפוצות

ישנן מספר נושאים שעלינו לטפל בהם.

הִבהוּב.

התזמון של המיקרו -בקר חייב להיות ממש מדויק בהדלקת וכיבוי של פלט השער. הספרייה ש- RobotDyn מציע, יש לה הפסקה של טיימר בכל 100us, ומשנה את רמת השער בטיימר בלבד. זה אומר שזה יכול להיות +/- 50 מיקרו שניות מהערך האופטימלי. זה נותן תוצאה טובה על בהירות גבוהה, אבל מהבהב הרבה על בהירות נמוכה. כמו כן, אם המיקרו -בקר עושה הרבה דברים, הוא מקטין את דיוק הזמן, ולכן באופן אידיאלי יש להשתמש במיקרו -בקר ייעודי עבור העמעם.

בהירות מינימלית. למעלות נוריות יש ממיר חשמל מובנה, שפשוט יסרב לעבוד ללא מספיק כוח. נראה שהנורות שלי עובדות מצוין החל מ-10-11%.

אפילו עם ערך זה, חלק מהמנורות שלי סירבו להדליק בעת ההתחלה. גם כאשר מגבירים את הבהירות מאוחר יותר, הם נשארים חשוכים. לכן, כאשר אנו עוברים ממצב OFF לבהירות חיובית כלשהי, אנו מתחילים בתקופת חימום של 5 מחזורים, כאשר אנו נותנים את מלוא העוצמה למנורות. לאחר מכן אנו ממשיכים עם הבהירות הרצויה. זה כמעט לא מורגש, אבל ממש עוזר.

תדר רשת 50/60 הרץ. אתה צריך לדעת כמה לחכות לפני האפס הבא. זה די פשוט - אנחנו רק מסתכלים על הפרש הזמן בין שתי הפרעות אחרונות.

שינוי בהירות הדרגתי. ESP32 הוא די איטי, לוקח 0.5 שניות לעבד בקשת HTTP טריוויאלית או אפילו WebSocket, אז אל תצפה למעבר בהירות חלק, צריך ליישם אותו איכשהו ברמה העמומה יותר. לכן, כאשר הוא מקבל בהירות חדשה מיציאה טורית, הוא פשוט קובע את המטרה, ואז מתקרב אליו לאט לאורך זמן.

הפתרון

להלן קוד הארדואינו הפשוט שלי עבור העמעם. הוא ממתין לפקודה (בייט אחד עם הבהירות החדשה) מהקלט הטורי, מטפל בהפסקות אפס-קרוס, שולט ב- TRIAC, מטפל בכל הנושאים שלמעלה.

שלב 4: בקר מנורה (ESP32)

בקר מנורה (ESP32)
בקר מנורה (ESP32)
בקר מנורה (ESP32)
בקר מנורה (ESP32)

להלן סכמת החיבור של כל הרכיבים שיש לי. לוח ה- ESP32 שונה מאוד ממה שאני משתמש בו (Heltec), כך שהסיכות שנבחרו נראות קצת מוזרות, אבל זה עדיין אמור לעבוד בסדר. אל תהסס להשתמש בסיכות שונות בפרויקט שלך.

הנה הקוד השולט על הכל. זה די פשוט קדימה.

המאפיינים העיקריים

ניתן לשליטה. הנורה מתחברת ל- WiFi, מפעילה שרת WebSocket ביציאה 81, ממתינה לפקודות. פורמט הפקודה הוא

רק שתי פקודות נתמכות לעת עתה: "set_brightness" ו- "update_settings", שהם … די תיאור עצמי.

קבלת זמן מ- NTP. אני לא רוצה לסבך יותר מדי דברים ולהוסיף לסכימה שעון בזמן אמת. יש לנו גישה לאינטרנט, מה שאומר שאנחנו יכולים לקבל את הזמן האמיתי משרת NTP כלשהו ולאחר מכן לעקוב אחר הזמן הנוכחי באמצעות טיימרים של המערכת.

אזעקת זריחה. אתה יכול להגדיר אזעקה אחת. מה זה בעצם עושה: מתחיל בהירות מינימלית ועובר בהדרגה למלוא הבהירות לאורך 10 דקות. ואז הוא נשאר למשך כמה שעות. לאחר מכן הוא נכבה בהדרגה במשך 60 שניות.

כל הפרמטרים לעיל ניתנים להגדרה.

ציפורים שרות. מיני DFPlayer משמשת להשמעת מוזיקה. יש הרבה מדריכים לזה, אבל בעצם אתה רק צריך לחבר כרטיס MicroSD, מעוצב ל- FAT32, עם קובץ אחד שנקרא 0001.mp3. הקובץ הזה יכול להכיל כל דבר שאתה אוהב, במקרה שלי זה 15 דקות של ציפורים שרות (הוא יהיה בלולאה), וזה הופך את הבוקר שלי למדהים. שים לב שיש קבל עצום על הכוח, ונגדים של 1 קאוהם בקו הסדרתי בין ESP32 ו- DFplayer - הם אופציונאליים, אך עוזרים להפחית את הרעש.

אחסון ההגדרות ב- EEPROM. כל ההגדרות נכתבות ב- EEPROM ונטענות בעת ההתחלה. זה מאפשר להשתמש במנורה עם לפחות תכונת אזעקה ללא בקר מחובר.

העברת מידע למסך OLED. ל- Heltec ESP32 שלי יש מסך מובנה של SSD1306 128X64 I2C. כל המידע החיוני מובא עליו. אני יודע, הקופסה נראית מכוערת, הדפסתי כמה דברים בתלת מימד וחתכתי את החורים והחלונות בעזרת מקדחה. מהיר, מלוכלך, אבל זה עובד!

שלב 5: לוח הבקרה

לוח בקרה
לוח בקרה
לוח בקרה
לוח בקרה

זה לב הפרויקט. פטל פטל עם צג מקורי בגודל 7 אינץ ', עם כמה חזית קווי.

להלן קוד המקור המלא.

התכונות

כתוב ב- Python. אני אוהב את Kivy, זו מסגרת Python לממשקי משתמש. פשוט מאוד, אך גמיש ויעיל (משתמש הרבה קוד C בפנים לביצועים גבוהים והאצת חומרה).

הצג את הטמפרטורה והלחץ הנוכחיים בחוץ. אם תחבר חיישן מרחוק - גם טמפרטורת פנים. הוא גם מבקש ומנתח את תחזית מזג האוויר ל -12 השעות הבאות ונותן ייעוץ לגבי ההסתברות לגשם.

בקר SunriseLamp. לוח אחר מציג מידע בסיסי על האזעקה ומאפשר לך להתאים את הבהירות. אם אתה עובר להגדרות, אתה יכול להגדיר כל פרמטר של המנורה, כולל לוח הזמנים של האזעקה, עוצמת שמע מרבית וכן הלאה.

שומר מסך.מציג משחק חיים על המסך לאחר תקופה כלשהי של חוסר פעילות.

פעם היו יותר מזה, אבל דברים אחרים נראו חסרי תועלת.

הַתקָנָה

התקנתי הכל באופן ידני ב- Raspbian, ועכשיו אני יכול להגיד: אל תחזור על הטעויות שלי. השתמש ב- KivyPie, הכול מותקן מראש.

מלבד זאת, פשוט עקוב אחר מדריך ההתקנה במאגר הקוד.

שלב 6: תהנה

אני אישית שמח עם המכשיר. אני משתמש בה כתאורה מרכזית בבית במהלך היום, וזה מאפשר לי להתעורר בבוקר, זה מדהים.

אני יודע שההוראות אינן מפורטות ותיאוריות במיוחד. אם מישהו עושה את אותו הדבר ויש לו בעיות - אני אשמח לעזור!

מוּמלָץ: