שאלת ארדואוניסט מתחיל- שליחת קוד IR ממספר לדים - אלקטרוניקה ומודינג - HWzone פורומים
עבור לתוכן
  • צור חשבון

שאלת ארדואוניסט מתחיל- שליחת קוד IR ממספר לדים


aml

Recommended Posts

שלום לכולם,

הפרוייקט שברצוני לממש הוא בעיקרו שלט ל5 מזגנים (כרגע לא 'בית חכם' של ממש, יותר כמו שעון שבת משוכלל)

לדוגמא- אני רוצה בשעה 20:00 להדליק את מזגן 1 ולכבותו ב23:00.

את מזגנים 2 ו3 להדליק ב22:30 ולכבותם למחרת ב8:00.

ושוב את מזגן 1 להדליק ב10:45 ולכבות ב14:00 וכו' וכו'. קטע של דתיים וסעודות שבת, אם מישהו תמה.

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

מי אני-

מתכנת עם שליטה טובה ב C ו ++C, ורקע מוגבל באלקטרוניקה (לא מתבייש ללמוד, פשוט לא יצא לי).

מה יש לי-

ערכת sparkfun בסיסית + מקלט אינפרא (TSOP38238) + כמה לדים 950nm.

במה התנסיתי עד כה-

השלמתי חצי מה'ניסויים' של הSIK + כמה מודיפיקציות (בעיקר תקשורת סריאלית). רואים שאני ירוק ועף על עצמי, שאין לי סבלנות אפילו לסיים עוד 7 מעגלים..

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

מה אני יודע-

הפין שבו אפשר לשלוח סיגנל IR הוא 3. ככה זה בספריה, וזה אילוץ של הUNO (משהו עם טיימרים :) ). ראיתי שטוענים שגם פין 11 עובד עם אותו טיימר במערכת, אבל לא נראה לי שזה יהווה פתרון של ממש.

שימוש בshift register שמגיע עם הSIK לא ממש יעזור, כיוון שהוא לא באמת שער מפין אחד מסוים לרגל המבוקשת, אלא צריך לכתוב לו את מה רוצים להרים וכו' (תקנו אותי אם אני טועה, כמובן)

ולשאלה :s0432:-

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

ושאלה אחרת- האם יש ספריה / תמיכה של הקומפיילר במשהו שדומה לSTL? לא שאני לא יכול לממש תור לבד, פשוט קשה לי להאמין שאין כזו ספריה. אני יודע, שאלות של מתחילים. תהיו נחמדים ותעזרו, טוב? :cognee:

בתודה מראש

קישור לתוכן
שתף באתרים אחרים

בודאי.

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

בלילה חשבתי על זה שאולי אני בכלל לא זקוק לספריה שמתבססת על 'מתנד' PWMי שהותאם ל38KHZ, אלא (אולי) יכול לכתוב לבד פונקציה שתעשה את זה לבד, על בסיס 2 דיליי של 26 מיקרו-שניות ו1 של 27. זה יוצא בממוצע קרוב יותר ל38KHZ מאשר הספריה הנ"ל (אם הבנתי נכון את התיעוד).

האם פונקצית digitalWrite לוקחת יותר מכמה פעולות אטומיות?

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

והכי חשוב, אין כמו ניסוי וטעיה :)

עוד שאלה-

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

שוב, אם מישהו יודע על טעות בהבנתי, אשמח בתיקונה.

אשתדל לעדכן בקרוב.

קישור לתוכן
שתף באתרים אחרים

אתה יכול לחבר את פין 3 ל demux ועליו לשלוט עם פינים אחרים של הארדואינו. ככה בעצם תוכל לפצל את האות שיוצא מפין 3 לכמה לדים שונים.

לגבי ה STL - ברוב המקרים גודל התוכנית הוא מאוד קריטי, יש רק 32 ק"ב לתוכנית אם אני לא טועה וכל דבר קטן נלקח בחשבון.

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

(נראה לי שתצטרך RTC בשביל התזמונים)

קישור לתוכן
שתף באתרים אחרים

ולשאלה :s0432:-

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

ושאלה אחרת- האם יש ספריה / תמיכה של הקומפיילר במשהו שדומה לSTL? לא שאני לא יכול לממש תור לבד, פשוט קשה לי להאמין שאין כזו ספריה. אני יודע, שאלות של מתחילים. תהיו נחמדים ותעזרו, טוב? :cognee:

בתודה מראש

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

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

אני מקווה שאני לא מבלבל את המוח

בהצלחה

קישור לתוכן
שתף באתרים אחרים

הכוונה למפלג כזה?

http://www.dash.co.il/index.php?route=product/product&path=62_64&product_id=3055

או שאני צריך מדגם 4051 (בקישור זה 4052)? הבנתי נכון שההבדל הוא של4051 יש 8 ערוצים נפרדים, ול4052 יש 4 זוגות שנשלטים יחד (מה שיפריע לי אם אני באמת ארצה להפעיל את כל ה5 בנפרד)?

אני מקווה שלא אסתבך עם זה :)

אני מקבל את אי ההימצאות של STL כולו, השאלה היא האם יש מימוש כלשהו לתור / מחסנית פשוטים, או שאני צריך 'להביא מהבית'? יש סיכוי שיש לי אי שם בארכיון מהלימודים מימוש על C שיעבוד (עם void*)...

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

תודה!

קישור לתוכן
שתף באתרים אחרים

אתה יכול לעשות את זה עם 2 מפלגי 4052, או מפלג 4051 אחד.

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

לדוגמא בריגיסטר יהיה 00000001 כך שביציאה הראשונה שלו יהיה 1 בתנאי שבכניסת הנתונים יהיה 1, ככה בעצם אתה משנה את הנתונים והם עוברים רק ליציאה הראשונה.

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

דרך נוספת היא באמת להשתמש ב5 טרנזיסטורי NPN כפי שהוצעה.

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

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

ראה:

http://playground.arduino.cc/Learning/arduinoSleepCode

http://www.engblaze.com/hush-little-microprocessor-avr-and-arduino-sleep-mode-basics/

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...