מציג תוצאות 1 עד 8 מתוך 8

נושא: שליטה על מזגן אלקטרה באמצעות ארדואינו

  1. #1
    תאריך הצטרפות
    Feb 2013
    הודעות
    174
    תודה
    5
    קיבל/ה 38 תודות ב-28 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts

    שליטה על מזגן אלקטרה באמצעות ארדואינו

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


    קוד:
    struct{ uint32_t offMinutes :3; //Off timer control: tens of minutes to wait. Range: 0-5 uint32_t offHours :5; //Off timer control: hours to wait. Range: 0-23 uint32_t onMinutes :3; //On time control: tens of minutes to wait. Range: 0-5 uint32_t onHours :5; //On time control: hours to wait. Range: 0-23 uint32_t sleep :1; //Sleep mode. On(1)/off(0) uint32_t temperature :4; //Temperature. Range: 0(min)-15(max) uint32_t reserved1 :2; //Unused? uint32_t tilt :1; //Tilt control. On(1)/off(0) uint32_t tilt2 :1; //Tile2/Unused? uint32_t reserved0 :1; //Unused? uint32_t fanSpeed :2; //Fan speed. Min(0)/Med(1)/MAX(2)/AUTO(3) uint32_t mode :3; //Mode select. COOL(1)/HEAT(2)/AUTO(3)/DRY(4)/FAN(5) uint32_t power :1; //Toggle On/off. Toggle(1)/No change(0) };
    הקוד מאתחל את המבנה בהתאם לפקודה שמתקבלת מהפורט הטורי, מקודד את הרצף בקוד מנצ'סטר ושולח אותו 6 פעמים, לפי התיזמונים הנדרשים. יש להתקין קודם את הספרייה IRremote (יש קישור בתחילת הקוד).
    כאמור - בקוד יש הסבר מדויק, אבל אם יש שאלות, אשמח לענות.

    הקוד: http://pastebin.com/wcgcyg2T

    שרשורים קשורים:
    http://www.makers.co.il/mfs/showthread.php?t=3226
    http://www.makers.co.il/mfs/showthread.php?t=286
    http://www.makers.co.il/mfs/showthread.php?t=2722
    נערך לאחרונה על ידי Zigi; 18-12-2016 בשעה 17:13-24.

  2. 2 משתמשים/ות אמרו ל-Zigi תודה על ההודעה המועילה הזו:

    nightmechanic (19-12-2016),Terminal (18-12-2016)

  3. פרסומת
  4. #2
    תאריך הצטרפות
    Jan 2019
    הודעות
    4
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts

    לא עובד ב ESP8266

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


    קוד:
    struct{ uint32_t offMinutes :3; //Off timer control: tens of minutes to wait. Range: 0-5 uint32_t offHours :5; //Off timer control: hours to wait. Range: 0-23 uint32_t onMinutes :3; //On time control: tens of minutes to wait. Range: 0-5 uint32_t onHours :5; //On time control: hours to wait. Range: 0-23 uint32_t sleep :1; //Sleep mode. On(1)/off(0) uint32_t temperature :4; //Temperature. Range: 0(min)-15(max) uint32_t reserved1 :2; //Unused? uint32_t tilt :1; //Tilt control. On(1)/off(0) uint32_t tilt2 :1; //Tile2/Unused? uint32_t reserved0 :1; //Unused? uint32_t fanSpeed :2; //Fan speed. Min(0)/Med(1)/MAX(2)/AUTO(3) uint32_t mode :3; //Mode select. COOL(1)/HEAT(2)/AUTO(3)/DRY(4)/FAN(5) uint32_t power :1; //Toggle On/off. Toggle(1)/No change(0) };
    הקוד מאתחל את המבנה בהתאם לפקודה שמתקבלת מהפורט הטורי, מקודד את הרצף בקוד מנצ'סטר ושולח אותו 6 פעמים, לפי התיזמונים הנדרשים. יש להתקין קודם את הספרייה IRremote (יש קישור בתחילת הקוד).
    כאמור - בקוד יש הסבר מדויק, אבל אם יש שאלות, אשמח לענות.

    הקוד: http://pastebin.com/wcgcyg2T

    שרשורים קשורים:
    http://www.makers.co.il/mfs/showthread.php?t=3226
    http://www.makers.co.il/mfs/showthread.php?t=286
    http://www.makers.co.il/mfs/showthread.php?t=2722

    תודה רבה על ההודעה הזאת. לקח לי דיי הרבה זמן למצוא את זה (לא חשבתי לחפש בעברית).
    בכל מקרה, ניסיתי לעשות את השינויים המחייבים על מנת שזה יעבוד ב ESP8266, הרצתי את זה והיו 2 בעיות:
    1. רוב הפעמים זה קורס. לדעתי הסיפור הוא שזה לא מצליח לעמוד בתדר השליחה הנדרש. הקוד ששולח לפעמים מקריס את המכשיר. ניסיתי את זה ב 2 לוחות פיתוח - WeMos אשר קרס תמיד, ו NodeMCU עליו זה קרס בחלק מהמקרים (כמעט בחצי מהמקרים). ראיתי שיש איזו דרך לשנות את ה GPIO בצורה יותר יעילה, דרך הרגיסטרים, אבל עוד לא יצא לי לנסות את זה.
    ד.א. עבדתי עם פין מספר 4.
    2. בפעמים שזה לא קרס, ראיתי שהלד עובד (אפשר לראות IR LED דרך המצלמה של הטלפון) אבל זה לא עשה כלום למזגן.

    האם מישהו נתקל בבעיה הזאת? האם מישהו הצליח לשלוט במזגן אלקטרה דרך ESP8266? אשמח לעזרה.

  5. #3
    תאריך הצטרפות
    Feb 2013
    הודעות
    174
    תודה
    5
    קיבל/ה 38 תודות ב-28 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    היי,

    הספריה הנ"ל עובדת אצלי ללא בעיות על ESP8266 - אין קריסות. אין צורך לעבוד ישירות עם רגיסטרים. אני מניח שהקריסות הן ביטוי לבעיה אחרת בקוד שלך.
    אם תרצה, אחלוק את הקוד שלי איתך. אבל, גם אם הוא יעבוד, עדיין תצטרך לדבג את הבעיה שבקוד שלך :-)

  6. #4
    תאריך הצטרפות
    Mar 2014
    הודעות
    821
    תודה
    6
    קיבל/ה 85 תודות ב-84 הודעות
    פוסטים בבלוג
    13
    תודה
    0
    Thanked 0 Times in 0 Posts
    אולי אין מספיק זרם לספק של ה ESP, ל ESP יש רגעים של זרם גבוה
    יוני פפיני
    0585050330
    pro-hobby.com

  7. #5
    תאריך הצטרפות
    Jan 2019
    הודעות
    4
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    Zigi - תודה, שלחתי לך הודעה פרטית.

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

  8. #6
    תאריך הצטרפות
    Feb 2013
    הודעות
    174
    תודה
    5
    קיבל/ה 38 תודות ב-28 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    אכן - USB של מחשב עלול להיות גבולי מבחינת אספקת זרם כשמפעילים את ה-WiFi.

  9. #7
    תאריך הצטרפות
    Jan 2019
    הודעות
    4
    תודה
    0
    קיבל/ה 0 תודות ב-0 הודעות
    תודה
    0
    Thanked 0 Times in 0 Posts
    אז בעצם אפשר לנסות לחבר את זה לספק USB במקום למחשב. זה אומר שאצטרך לשנות את הקוד כך שיחליט על הפקודה שהוא שולח לא מה Serial.
    בסופו של דבר, רק כדי לוודא שזה עובד, מבחינתי אני יכול סתם כל 10 שניות לשלוח פקודת הדלקה.
    ד.א. - אני לא הפעלתי את ה WIFI. שיניתי רק את מה שחייב. מצרף כאן את הקוד שלי: https://pastebin.com/Grb9cumD

  10. #8
    תאריך הצטרפות
    Mar 2014
    הודעות
    821
    תודה
    6
    קיבל/ה 85 תודות ב-84 הודעות
    פוסטים בבלוג
    13
    תודה
    0
    Thanked 0 Times in 0 Posts
    זה לא עניין של קוד, שים קבל אלקורוליטי גדול על ה 3.3 ותראה אם זה משתפר.
    הייתי צריך לעשות רשת ESP באיזה מפעל ושמתי שנאים של 5V 1A עם מייצב וקבל 1000 מיקרו וזה עבד יופי, לגבע שנאי מי'קרו USB - צריך לבדוק
    יוני פפיני
    0585050330
    pro-hobby.com

הרשאות פרסום

  • אין באפשרותך לפרסם נושאים חדשים
  • אין באפשרותך לפרסם תגובות
  • אין באפשרותך לצרף קבצים
  • אין באפשרותך לערוך את הודעותיך
  •  
הרשמה