מצפצף עליך: גלאי עשן בשלט רחוק
כשיש עשן בסביבה, גלאי העשן עושים רעש חזק וצורם, או צליל מגניב של מלחמת הכוכבים. אם נחבר לגלאי לוח ארדואינו וקצת נתכנת אותו - נוכל להשתמש בו כאזעקה בשלט רחוק, או רמקול שינגן את מארש האימפריה (או יום הולדת שמח) כשנרצה להפתיע חבר שנכנס לחדר
הסיפור מתחיל בגלאי עשן זול שפירקתי. במהלך איסוף החומר לכתבה ההיא גיליתי (כפי שהוזכר גם בתגובות) שישנם גלאים שמפעילים זה את זה באופן אלחוטי, ובכך מבטיחים שהאזעקה תישמע בכל רחבי הבניין. הגלאי שלי אמנם לא היה מצויד ביכולת כזו, אך האם אוכל להפעיל את הצפצוף מרחוק בדרך אחרת?
הצד הקולט (והמצפצף)
מניפולציה מתוחכמת של המערכת הקיימת לא באה בחשבון: זה מסובך, ומבחינה פיזית נטו לא נשאר בגלאי מספיק מקום בשביל רכיבים נוספים – לפחות כאלה בסדרי הגודל שאני עובד איתם. לכן פירקתי משם מספר חלקי פלסטיק ורכיבים גדולים מיותרים, ופיניתי מקום ללוח דמוי-ארדואינו ממוזער מדגם Pro Mini (שנמכר כיום באיביי במחירים מצחיקים ממש) ולמקלט RF. שניהם ניזונים מסוללת 9V הרגילה של גלאי העשן.
את מקלט הרדיו הזעיר – RF הן ראשי תיבות של Radio Frequency, תדר רדיו – משלים משדר נפרד וקטן לא פחות. את שניהם אפשר לקנות בדולרים ספורים באיביי (חפשו RF Link Kit). הם פועלים בתדרים חוקיים, כמו של שלטי מכוניות וחניות, ובעוצמה נמוכה ביותר, כך שאין שום סכנת הפרעה לשידורים אחרים. העבודה איתם אינה אינטואיטיבית, אך למזלנו אנשים טובים כתבו ספריית תוכנה לארדואינו בשם VirtualWire, שדואגת לטפל בכל הפרטים הטכניים. תכנתי את הארדואינו (הנה קוד התוכנה – SmokeAlarmR) כך שכאשר הוא קולט דרך הרדיו קוד מספרי מוגדר מראש, הוא מפעיל את הרמקול של גלאי העשן ומשמיע צפצופים ארוכים ורמים, בדיוק כמו גלאי תקין. בניסוי וטעיה הסתבר שהתדר מחריש האוזניים ביותר הוא 3,150 הרץ, אם כי המספר עשוי כמובן להשתנות בהתאם לגלאי הספציפי.
הצד המשדר
כעת עברתי לבניית מתקן השידור. גם הוא מבוסס על "מוח" מסוג ארדואינו Pro Mini ועל הספריה VirtualWire. מתקן זה ניזון מסוללת 12V קטנה ושולח, לפי פקודה, את הקוד המספרי המוסכם לחלל האוויר. את הפקודה עצמה אפשר בעיקרון לשאוב ממגוון מקורות: לחצן פשוט, חיישן נפח, הוראה מהמחשב דרך חיבור Bluetooth ועוד. במקרה זה השתמשתי במפסק מגנטי, שהגיע ממדפסת לייזר שחוטה, ובמגנט רב עוצמה שמקורו בכונן דיסק קשיח ישן (בעולם המייקרים, שום דבר לא הולך לאיבוד). כאשר מקרבים את המגנט למפסק הוא מופעל, ואז הארדואינו מזהה את השינוי ושולח את הקוד המוסכם. התוכנה לארדואינו נמצאת כאן – SmokeAlarmT.
כל מה שנותר לעשות זה להתקין את "גלאי העשן" במקום ובאופן שלא יעוררו חשד, ולשאת איתכם את המשדר ומגנט (בנפרד כמובן). הבוס קרא לכם למשרד לשיחה מלחיצה? גיליתם שהבליינד-דייט שלכם הוא עם יצור מהחלל? סתם רוצים להפתיע חבר עם מארש האימפריה? קרבו את המגנט לחיישן וקוו שהאחרים לא קראו את הכתבה הזו.
הלו, זה רדיו?
לא מעט מייקרים מתחילים מתפתים למחיר המגוחך של קיט משדר ומקלט ה-RF, ומגלים בדיעבד שבשימוש נאיבי, התוצאות שהוא מספק הן עלובות. להלן כמה דברים שכדאי לדעת מראש על הקיט הזה, כדי להימנע ממפח נפש.
ראשית, כדי להשיג טווח שידור סביר - למשל בין חדר לחדר בדירה - צריך לחבר גם למשדר וגם למקלט אנטנות. האנטנה יכולה להיות כל חוט מתכת דק, אך חשוב שהיא תהיה באורך הנכון. בדרך כלל משתמשים באנטנה של חצי אורך גל או רבע אורך גל, כאשר במקרה של רבע, קווי ה"אדמה" של המעגל החשמלי אמורים להשלים את החסר. את אורך הגל מחשבים לפי מספר המטרים שקרינה אלקטרומגנטית עוברת בשניה (מהירות האור = 299,792,458 ( חלקי תדר הרדיו של המשדר. במקרה שלנו, למשדר עם תדר של 433 מגהרץ, התוצאה היא 0.69236 מטרים. חצי אורך גל יהיה לפיכך 34.62 סנטימטרים ורבע אורך גל יהיה 17.31 סנטימטרים.
שנית, קצב העברת הנתונים הוא נמוך, גם בתנאי קליטה מעולים. במקרה הטוב מדובר על 4800 ביטים ברוטו לשניה, שזה 600 בייט – קרוב לכמות המידע שבפסקה הקודמת, כולל רווחים. במקרה הרע, שהוא כמובן נפוץ יותר בקיטים הזולים מאיביי, גם קצב נמוך פי שניים ייחשב הצלחה.
המשדר הוא פרימיטיבי לחלוטין. בדרך כלל הוא לא משדר כלום, ורק כאשר הוא מקבל מתח חשמלי לפין הבקרה שלו, הוא מוציא גל רדיו פשוט ואחיד עד שהמתח נפסק. העבודה של המקלט קשה יותר: מכיוון שהוא לא יודע מתי מגיע שידור ובאיזו עוצמה, הוא מניח שהמשדר שולח לו נתונים ברציפות ומנסה ככל יכולתו להפריד בין השידור ההיפותטי הזה לבין רעשי הרקע. התוצאה היא שכאשר אין שידור, או כאשר משדרים יותר מדי ביטים זהים בזה אחר זה, המקלט מתחיל "לראות" נתונים דמיוניים ומשבש לחלוטין את התקשורת.
ספריית הקוד VirtualWire מונעת את השיבוש הזה בשתי דרכים: היא מתחילה כל שידור ב"נדנוד" של ביטים ("010101010101010101...") שנותן למקלט קו בסיס להפרדה בין אות אמתי לבין רעש רקע סתם, ולאחר מכן היא מקודדת את המידע המשודר כך שלא יהיה מצב של יותר מדי ביטים זהים ברצף. בצד הקולט, הספריה יודעת להתעלם מהנדנוד, ולפענח את הקידוד כדי לחלץ את המידע המקורי. פעולות אלה אמנם עושות את העבודה, אך הן "גונבות" חלק מרוחב הפס כביכול ומאיטות עוד יותר את קצב העברת הנתונים בפועל.
שימושים נוספים
את השילוב של קיט RF עם ארדואינו אפשר לנצל במגוון דרכים אחרות וגם מעשיות: פעמונים אלחוטיים מקוריים, רשתות חיישנים קטנות, יישומי "בית חכם" למיניהם, שלט רחוק לגאדג'טים תוצרת בית ועוד. המעוניינים מוזמנים (ומוזמנות), כרגיל, לאתר של קהילת המייקרים הישראלית - makers.co.il