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

שלט רחוק RF ATtiny85: 3 שלבים
שלט רחוק RF ATtiny85: 3 שלבים

וִידֵאוֹ: שלט רחוק RF ATtiny85: 3 שלבים

וִידֵאוֹ: שלט רחוק RF ATtiny85: 3 שלבים
וִידֵאוֹ: גיל צורי, פרס פיתוח פרויקט טכנולוגי 2024, יולי
Anonim
שלט רחוק ATtiny85 RF
שלט רחוק ATtiny85 RF

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

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

שלב 1: פורמט הודעות RF

פורמט הודעות RF
פורמט הודעות RF

עבור פרויקט זה בחרתי לשכפל את האותות לאחד ממתגי האלחוט האלקטרוניים של Etekcity RF (עיין במדריך ההוראה שלי על המודולים האלה). עשיתי זאת מכיוון שהצלחתי לוודא שהמשדר שלי עובד עם מקלט Etekcity ושהמקלט שלי עובד עם השלט של Etekcity. במקרה גם אני יודע בדיוק מה הקודים והפורמט הנכונים עבור המכשירים האלה כי תפסתי אותם בעבר. עיין במפענח "חיישן RF חיישן Arduino" שלי עבור שרטוט לכידת הקוד.

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

שלב 2: חומרה

חוּמרָה
חוּמרָה
חוּמרָה
חוּמרָה
חוּמרָה
חוּמרָה

המשדר פועל על סוללת מטבע (2032) ולכן צריכת חשמל נמוכה היא המפתח. רוב זה מושג בתוכנה אך הוא נעזר בכך שה- ATtiny85 פועל בדרך כלל על השעון הפנימי של 1 מגה-הרץ. הכלל הוא שתדרי שעון נמוכים יותר דורשים פחות הספק ו- 1 מגה-הרץ מושלם להיגיון המשדר.

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

המקלט נמצא על לוח לחם ללא הלחמה מכיוון שמטרתו היחידה היא להראות כיצד לקבל אותות וכיצד להפעיל/לכבות משהו על סמך הקודים שהתקבלו. הוא משתמש בנורית כדי להצביע על מצב הפעלה/כיבוי, אך אתה יכול להחליף אותו במנהג ממסר וכו '. כל ארדואינו יכול לשמש עבור המקלט מכיוון שהוא לא צריך להיגמר מהסוללה. אם גודל הוא עדיין שיקול אתה יכול להשתמש בשבב ATtiny85 אחר. המפתח הוא ש- ATtiny85 צריך לפעול במהירות 8 מגה-הרץ במקלט. עיין ב- ATtiny85 Instructable הקודם שלי לשרטוט פשוט המאמת ששינית בהצלחה את השעון הפנימי ל -8 מגה-הרץ. בסוף פענוח החיישן שלי להוראה, אני כולל גרסת Arduino Nano של תוכנת המקלט. זהה לגרסת ATtiny85 הכלולה כאן למעט כמה הבדלים ברשומות שבבים.

כפי שפירטתי במדריכי ה- RF הקודמים שלי, אני מעדיף להשתמש במקלט כמו ה- RXB6 הנפוץ. זהו מקלט סופר הטרודיני שעובד הרבה יותר טוב מאשר המקלטים הסופר-רגנרטיביים המצורפים בדרך כלל עם משדרי FS1000A.

שני המודולים של המשדר והמקלט עובדים טוב יותר עם האנטנות המתאימות אך לרוב הם אינם מסופקים. אתה יכול לקנות אותם (קבל את התדר הנכון) או שאתה יכול להכין לבד. במהירות 433 מגה-הרץ, האורך הנכון הוא כ -16 ס"מ לאנטנת חוט ישר. להכנת סליל, קח כ -16 ס"מ של חוט ליבה מבודד ומוצק ועוטף אותו סביב משהו כמו מקדח 5/32 אינץ 'בשכבה אחת. הפשט את הבידוד מקטע ישר קצר בקצה אחד וחבר אותו ללוח המשדר/המקלט שלך. גיליתי שהחוט מכבל אתרנט גרוטאות פועל היטב עבור אנטנות. בדרך כלל יש ללוח המשדרים מקום להלחם את האנטנה אך ללוח המקלט עשויים להיות רק סיכות (כמו ה- RXB6). רק וודא שהחיבור מאובטח אם לא תלחם אותו.

שלב 3: תוכנה

תוכנת המשדר משתמשת בטכניקות נפוצות בכדי להכניס את השבב למצב שינה. במצב זה הוא שואב פחות מ- 0.2ua מהזרם. בכניסות המתג (D1-D4) מופעלים נגדי המשיכה הפנימיים אך הם אינם שואבים זרם עד לחיצה על מתג. הכניסות מוגדרות להפסקת שינוי (IOC). כאשר לוחצים על מתג, נוצרת הפרעה והיא מאלצת את השבב להתעורר. מטפל ההפרעות מבצע עיכוב של כ -48 שניות כדי לאפשר למתג להתנתק. לאחר מכן מתבצעת בדיקה על מנת לקבוע איזה מתג נלחץ וקוראים לשגרה המתאימה. ההודעה המועברת חוזרת על עצמה מספר פעמים (בחרתי 5 פעמים). זה אופייני למשדרים מסחריים מכיוון שיש כל כך הרבה תעבורת RF על 433-MHz ו- 315-MHz בחוץ. ההודעות החוזרות ונשנות עוזרות להבטיח שלפחות אחד יגיע למקלט.

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

מוּמלָץ: