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

הפיכת רובוט מטומטם מטומטם לחכם יותר: 4 שלבים
הפיכת רובוט מטומטם מטומטם לחכם יותר: 4 שלבים

וִידֵאוֹ: הפיכת רובוט מטומטם מטומטם לחכם יותר: 4 שלבים

וִידֵאוֹ: הפיכת רובוט מטומטם מטומטם לחכם יותר: 4 שלבים
וִידֵאוֹ: ✔ האם אתה מטומטם? במבחן הזה תגלה ! ( רק 12% מצליחים ) 2024, דֵצֶמבֶּר
Anonim
הפיכת רובוט מטומטם מטומטם לחכם יותר
הפיכת רובוט מטומטם מטומטם לחכם יותר

אז יש לי רובוט מכסחת דשא מקסים אך מטופש (התמונה היא מתוך www.harald-nyborg.dk).

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

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

אז החלטתי להוסיף קצת אינטליגנציה חיצונית.

23-04-2020 עריכה: החיישן לא ממש עבד, אז שיניתי כמה דברים

אספקה

2 מתגים חיצוניים דו כיווניים

אוֹ

נתב USB ישן אחד

כרטיס ממסר USB 1

1 דיגיספארק

רכזת USB 1

1 תיבת אלקטרוניקה אטומה למים

עריכה 23-04-2020:

נתב USB ישן OR1

כרטיס ממסר USB 1

1 usb2serial tll dinghy

רכזת USB 1

1 תיבת אלקטרוניקה אטומה למים

חיישן אולטרסוני Dfrobot URM 37 v3.2 (אתה יכול כנראה להשתמש בכל חיישן =)

kmod-usb-serial-cp210x

שלב 1: שלב 1: חיתוך רב תחום של מנואל

שלב 1: חיתוך שטח רב של מנואל
שלב 1: חיתוך שטח רב של מנואל
שלב 1: חיתוך שטח רב של מנואל
שלב 1: חיתוך שטח רב של מנואל

התמונה מראה כיצד עברתי מאזור חיתוך אחד, ל -2 אזורים.

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

השתמשתי בשני מתגים ידניים, כמו אלה שהיית משתמש בהם במסדרון או במדרגות.

זה עבד, פרט לאלה שהשתמשתי בהם היו ברמה ירודה מדי, ולכן קיבלתי באגים זוחלים לתוכם ומבלבלים אותם

שלב 2: שלב 2: הפתרון האוטומטי

שלב 2: הפתרון האוטומטי
שלב 2: הפתרון האוטומטי
שלב 2: הפתרון האוטומטי
שלב 2: הפתרון האוטומטי
שלב 2: הפתרון האוטומטי
שלב 2: הפתרון האוטומטי
שלב 2: הפתרון האוטומטי
שלב 2: הפתרון האוטומטי

אז החלטתי לעשות משהו אוטומטי.

קיבלתי נתב Netgear R6100 משומש, קיבלתי את זה כי יש בו wifi, USB וזיכרון מספיק כדי להתנסות בניסויים, במקום לדחוף אותו ל- OpenWrt וחברים.

קיבלתי רכזת USB 2.0 הטובה ביותר ב- eBay וכרטיס ממסר 12V.

אחר כך היה לי דיגפארק מפרויקט קודם. 23-04-2020 עריכה: השתמש במקום זאת ב- usb2seriel dinghy

חיברתי את הממסרים במקום המתגים. השתמשתי בממסר 3 ו -4

לאחר מכן התקנתי את OpenWrt והוספתי לו את Crelay, picocom ו- coreutils-stty.

23-04-2020 עריכה: נוספה גם xxk, kmod-usb-serial-cp210x

מחובר 12V לנתב ולוח הממסרים.

23-04-2020 עריכה: השתמש ב- Urm 37 v3.2 במקום בשאר הדף הזה

ואז למדתי משהו "מהנה". משדר הממסר ינסה להפעיל את רכזת ה- usb, ובכך ימנע מהדיספארק לאתחל כראוי. אז אני מנתק את חוט החשמל בכבל ה- USB מכרטיס הממסר ומרכז ה- usb.

אז חיברתי את הדיגיספארק וכרטיס ממסר ה- USB לרכזת USB 2.0, ואת הרכזת לנתב.

כדי להיות הוגנים, תיכננתי את הדיספארק לפני שהוספתי אותו לנתב

ב- digispark הוספתי כפתור שחיברתי בין P1 ל- Gnd.

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

הייתי צריך להוסיף קפיץ להפעלה, כדי לקבל אירוסין מוצק טוב.

שלב 3: שלב 3: תוכנה

הקובץ מכיל תוכנית ארדואינו לאידיפארק.

הוא ממוקם ב- root/LawnSelector.

לקובץ זה דרושות כמה libs של digispark, כמו digiCDC ולוחות הדיגיספארק שנוספו ל- ide arduino.

ואז יש את הקבצים/root/GrassCtr/*.

אלה הקבצים שבאמת עושים את העבודה.

Kreds1 משנה את הממסרים לאזור 1

Kreds2 משנה את הממסרים לאזור 2

KredsStatus שואל את ממסר ה- USB, איזה אזור פעיל

23-04-2020 עריכה: השתמש ב- UltraSoundSeriel במקום קריאת דיגיספארק.

ReadDigiSpark, קורא את החדשות בכל שלישי.. רגע. קורא את מצב הקלט של הדיספארק

GrassCtl עושה את החשיבה.

הנה מה שזה עושה.

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

ואז ברגע שהרובוט מכסח, החיישן יגיד שהרובוט בחוץ.

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

שימו לב. התוכנה היא בלגן נורא של אלוהים, אבל היא עובדת, כל כך הלאה ומעלה

שלב 4: שלב 4: הפעלת התוכנה

כדי להפעיל את התוכנה, עלינו לעשות משהו.

הוספתי אותו ל- cronJob

*/5 * * * */root/GrassCtrl/GrassCtl

לקובץ

/etc/crontabs/root

לאחר מכן, על מנת להפעיל את עבודות העגלה עשיתי

/etc/init.d/cron אפשר

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

וכן, עכשיו זה מקבל הכל

מוּמלָץ: