זכור איך היה
הרובוטשואב האבק "Cybernetics" בספרו של N.N. נוסובה "דאנו בעיר הסולארית"? האם היה צריך להזכיר לו שהגיע הזמן להגיע לעבודה? כעת, כאשר מכשירים כאלה הפכו למציאות, התברר שזה הכרחי. קח את השלט ולחץ על הכפתור עליו. גיבור היצירה של פצ'קול פסטרנקי, לאחר שראה זאת, בוודאי היה מבחין: "איזה סוג של אוטומציה זה, אם אתה צריך ללחוץ על כפתור, לו רק היה לו את זה בלי שום כפתורים." גם המחבר של Instructables תחת הכינוי ShaperG חשב. ועשה
עשה זאת בעצמך מכשיר להפעלת שואב אבק רובוט בלוח זמנים.
תוצרת בית מורכב מטיימר מכני להפעלת מכשירי חשמל שונים בלוח זמנים (איקאה או כל סוג אחר), ספק כוח,
ארדואינו, מגש פריזמה מסוג מגש ברזל וקפיצות דופונט (אופציונלי, ניתן לחבר הכל על ידי הלחמה), שני נוריות לד - זוהר גלוי ואינפרא אדום, שני נגדי 330 אוהם, חלונות Sparkfun או כל סוג אחר.
לאחר שאסף את כל הרכיבים הדרושים, האשף יוצר תרשים. ושוב בתוכנית דמוי פריזינג, במקרה זה, באפליקציה המקוונת מקניזמלאר. לא כולם אוהבים את הדרך הזו לשרטט דיאגרמות, אבל איך לחבר הכל מובן.
לאחר שהחליט על התוכנית, האשף מתחיל לתכנת:
לוקח ספריה
כאןוהסקיצה היא
כאן. מפשט את השרטוט כך שכאשר הכוח דולק הוא שולח ברציפות פקודה "נקייה" כל חמש שניות. הסקיצה תצטרך להסתיים אם
המודל שואב האבק שונה מ- iRobot Roomba 530. ובכן, המאסטר מתברר כך:
# כלול
/ *
מתזמן סופר פשוט ארדואינו פאוורד רומבה
2013-08-03 שחרור ההוראות
קוד מותאם מ: https://gist.github.com/probonopd/5181021
שלח פקודות אינפרא אדום מהארדואינו ל- iRobot Roomba
מאת פרובונו
2013-03-17 שחרור ראשוני
זכויות יוצרים (ג) 2013 מאת probono
כל הזכויות שמורות.
חלוקה מחדש ושימוש בצורות מקור ובינאריות, עם או בלי
שינוי, מותר בתנאי שהתנאים הבאים מתקיימים:
1. חלוקה מחדש של קוד המקור חייבת לשמור על הודעת זכויות היוצרים לעיל, זאת
רשימת התנאים וההתבטאות הבאה.
2. חלוקות מחדש בצורה בינארית חייבות לשחזר את הודעת זכויות היוצרים לעיל,
רשימת תנאים זו וההצהרה הבאה בתיעוד
ו / או חומרים אחרים המסופקים עם ההפצה.
תוכנה זו ניתנת על ידי בעלי זכויות היוצרים והתרומות "כמות שהיא" וכן
כל התחייבות מפורשת או משתמעת, לרבות, אך לא מוגבלת, המשתמעת
אחריות סחירות והתאמה למטרה מסוימת הם
מבוטל. בשום מקרה לא תהיה האחריות על בעל זכויות היוצרים או על התורמים
כל נזק ישיר, עקיף, מקרי, מיוחד, מופתי או תוצאתי
(כולל, אך לא מוגבלת, רכישה של מוצרים ושירותי חילוץ;
אובדן שימוש, נתונים או רווחים; או הפרעה עסקית) בכל מקרה נגרם
על תורת אחריות כלשהי, בין אם בחוזה, אחריות קפדנית או נזיקין
(לרבות רשלנות או אחרת) המתעוררים בדרך כלשהי ללא שימוש בזה
תוכנה, אפילו אם הומלץ על האפשרות של נזק כזה.
* /
IRsend irsend; // hardwired לפינים 3; השתמש בטרנזיסטור כדי להניע את נורית ה- IR לטווח מירבי
int LED = 10;
הגדרת ביטול ()
{
Serial.begin (9600);
pinMode (LED, OUTPUT);
digitalWrite (LED, HIGH); // הפעל את הנורית (HIGH היא רמת המתח)
}
לולאה חלילה ()
{
roomba_send (136); // שלח "נקי"
עיכוב (5000); // המתן 5 שניות
}
void roomba_send (קוד int)
{
Serial.print ("שליחת קוד Roomba");
Serial.print (קוד);
אורך int = 8;
לא חתום int raw [אורך * 2];
לא חתום int one_pulse = 3000;
לא חתום int one_break = 1000;
unsigned int zero_pulse = one_break;
unsigned int zero_break = one_ pulse;
arrayposition int = 0;
// Serial.println ("");
עבור (מונה אינטר = אורך 1; מונה> = 0; - המפגש) {
אם (קוד & (1 << דלפק)) {
// Serial.print ("1");
raw [arrayposition] = דופק אחד;
raw [arrayposition + 1] = one_break;
}
אחרת {
// Serial.print ("0");
raw [arrayposition] = zero_puls;
raw [arrayposition + 1] = zero_break;
}
arrayposition = arrayposition + 2;
}
עבור (int i = 0; i <3; i ++) {
irsend.sendRaw (גולמי, 15, 38);
עיכוב (50);
}
Serial.println ("");
Serial.print ("תזמונים גולמיים:");
עבור (int z = 0; z <אורך * 2; z ++) {
Serial.print ("");
Serial.print (גלם [z]);
}
Serial.print ("\ n \ n");
}
בתחילה, האשף בודק את פעולת הסקיצה כדי להוציא את היציאה הטורית לצג. ואז זה מכניס את הכל למקרה ומכניס את הארדואינו לא מהמחשב, אלא מאספקת החשמל המופעלת באמצעות טיימר מכני.
כעת, לאחר שמקמים את המכשיר בסמוך לתחנת הטעינה, אליה שואב תמיד שואב האבק הרובוט, תוכלו לקבוע את לוח הזמנים המתקפל עבור טיימר המכני להפעלתו. הכי טוב - פעם ביום. רק לא בלילה, כמו ביצירתו של N.N. נוסובה.