สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: ขั้นตอนที่ 1: การตัด Manuel Multi Area
- ขั้นตอนที่ 2: ขั้นตอนที่ 2: โซลูชันอัตโนมัติ
- ขั้นตอนที่ 3: ขั้นตอนที่ 3: ซอฟต์แวร์
- ขั้นตอนที่ 4: ขั้นตอนที่ 4: การเปิดใช้งานซอฟต์แวร์
วีดีโอ: การสร้างหุ่นยนต์ตัดหญ้าใบ้อย่างชาญฉลาด: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
ดังนั้นฉันจึงมีหุ่นยนต์ตัดหญ้าที่น่ารัก แต่โง่ (รูปภาพมาจาก www.harald-nyborg.dk)
หุ่นยนต์ตัวนี้ควรจะตัดสนามหญ้าของฉัน แต่สนามหญ้าของฉันใหญ่และซับซ้อนเกินกว่าจะเข้ามุมได้จริงๆ
ไม่แสดงในภาพวาดของฉันมีต้นไม้มากมายและชิงช้าเป็นต้นเป็นต้น ผลที่ได้คือ หุ่นยนต์ใช้เวลามากพอสมควร วิ่งผ่านส่วนเปิดที่ตัดแล้ว และใช้เวลาน้อยเกินไปในการตัดชิ้นส่วนที่แข็ง
ดังนั้นฉันจึงตัดสินใจเพิ่มข่าวกรองภายนอก
23-04-2020 แก้ไข: เซ็นเซอร์ใช้งานไม่ได้ ดังนั้นฉันจึงเปลี่ยนสองสามอย่าง
เสบียง
สวิตช์ 2 ทางกลางแจ้ง 2 ทาง
หรือ
เราเตอร์ usb เก่า 1 ตัว
การ์ดรีเลย์ usb 1 ใบ
1 ดิจิสปาร์ค
ฮับ usb 1 ตัว
กล่องอิเล็คทรอนิกส์กันน้ำ 1 กล่อง
23-04-2020 แก้ไข:
OR1 เราเตอร์ usb เก่า
การ์ดรีเลย์ usb 1 ใบ
1 usb2serial tll thinghy
ฮับ usb 1 ตัว
กล่องอิเล็คทรอนิกส์กันน้ำ 1 กล่อง
1 Dfrobot URM 37 v3.2 เซ็นเซอร์อัลตราโซนิก (คุณอาจใช้เซ็นเซอร์ใดก็ได้ =)
kmod-usb-serial-cp210x
ขั้นตอนที่ 1: ขั้นตอนที่ 1: การตัด Manuel Multi Area
รูปภาพแสดงให้เห็นว่าฉันเปลี่ยนจากพื้นที่ตัดหนึ่งเป็น 2 พื้นที่ได้อย่างไร
หุ่นยนต์ของฉันจะสตาร์ทอัตโนมัติทุกๆ 2 วัน ตราบใดที่ฉันยังจำได้ว่าเปลี่ยนจากพื้นที่หนึ่งเป็นอีกพื้นที่หนึ่ง สิ่งนี้ก็ใช้ได้ดี
ฉันใช้สวิตช์แบบแมนนวล 2 ตัว เช่นเดียวกับที่คุณใช้ในห้องโถงหรือบันได
วิธีนี้ใช้ได้ ยกเว้นที่ฉันใช้มีคุณภาพต่ำเกินไป ดังนั้นฉันจึงมีแมลงคลานเข้ามา ทำให้พวกเขายุ่งเหยิง
ขั้นตอนที่ 2: ขั้นตอนที่ 2: โซลูชันอัตโนมัติ
ดังนั้นฉันจึงตัดสินใจทำสิ่งที่อัตโนมัติ
ฉันได้เราเตอร์ Netgear R6100 ที่ใช้แล้ว ฉันได้เราเตอร์นี้เพราะมี wifi, usb และหน่วยความจำเพียงพอที่จะทำการทดลองเกี่ยวกับการทดลอง แทนที่จะทำเกี่ยวกับการยัดเยียด OpenWrt และเพื่อน ๆ เข้าไป
ฉันมีฮับ usb 2.0 ที่ดีที่สุดของอีเบย์และการ์ดรีเลย์ 12v
จากนั้นฉันก็มี digispark จากโครงการก่อนหน้านี้ 23-04-2020 แก้ไข: ใช้ usb2seriel thinghy แทน
ฉันต่อสายรีเลย์แทนสวิตช์ ฉันใช้รีเลย์ 3 และ 4
จากนั้นฉันติดตั้ง OpenWrt และเพิ่ม Crelay, picocom และ coreutils-stty เข้าไป
23-04-2020 แก้ไข: เพิ่ม xxk, kmod-usb-serial-cp210x เช่นกัน
เสียบปลั๊ก 12V เข้ากับเราเตอร์และบอร์ดรีเลย์
23-04-2020 แก้ไข: ใช้ Urm 37 v3.2 แทนส่วนที่เหลือของหน้านี้
จากนั้นฉันก็ได้เรียนรู้บางสิ่งที่ "สนุก" บอร์ดรีเลย์จะพยายามเปิดเครื่องบนฮับ usb ดังนั้นจึงขัดขวาง digispark จากการรีบูตอย่างถูกต้อง ดังนั้นฉันจึงตัดสายไฟในสาย usb จากการ์ดรีเลย์และฮับ usb
จากนั้นฉันเสียบ digispark และการ์ดรีเลย์ usb เข้ากับฮับ usb 2.0 และฮับเข้ากับเราเตอร์
เพื่อความเป็นธรรม ฉันตั้งโปรแกรม digispark ไว้ก่อนที่จะเพิ่มลงในเราเตอร์
ใน digispark ฉันเพิ่มปุ่ม ซึ่งฉันต่อระหว่าง P1 และ Gnd
ฉันวางปุ่มนี้ไว้ ดังนั้นหุ่นยนต์จะเปิดใช้งานทันทีที่มันชาร์จในโรงรถ
ฉันต้องเพิ่มสปริงในการเปิดใช้งานเพื่อให้ได้รับการมีส่วนร่วมที่ดี
ขั้นตอนที่ 3: ขั้นตอนที่ 3: ซอฟต์แวร์
ไฟล์นี้มีโปรแกรม Arduino ide สำหรับ digispark
มันอยู่ใน root/LawnSelector
ไฟล์นี้ต้องการ digispark libs สองสามตัว เช่น digiCDC และบอร์ด digispark ที่เพิ่มใน Arduino ide
จากนั้นมีไฟล์ /root/GrassCtr/*
นี่คือไฟล์ที่ใช้งานได้จริง
Kreds1 เปลี่ยนรีเลย์เป็น area1
Kreds2 เปลี่ยนรีเลย์เป็น area2
KredsStatus ถามรีเลย์ USB ว่าพื้นที่ใดทำงานอยู่
23-04-2020 แก้ไข: ใช้ UltraSoundSerial แทนการอ่าน digispark
ReadDigiSpark อ่านข่าวทุกวันอังคาร..เดี๋ยวก่อน อ่านสถานะอินพุตของ digispark
GrassCtl ทำหน้าที่คิด
นี่คือสิ่งที่มันทำ
หากหุ่นยนต์อยู่ในโหมด IN นานกว่า 10 ชั่วโมง มันจะตัดสินใจว่าหุ่นยนต์อยู่ในตอนกลางคืน และสิ่งนี้จะเปิดใช้งาน flipflop ซึ่งจะทำให้มันเริ่มทำงานในแต่ละพื้นที่ทุกๆ วินาที เหตุผลก็คือ หุ่นยนต์ของฉันเริ่มต้นด้วยการตัดขอบทั้งหมด และด้วยวิธีนี้ มันจะตัดขอบวันเว้นวัน
จากนั้นเมื่อหุ่นยนต์ตัดหญ้า เซ็นเซอร์จะแจ้งว่าหุ่นยนต์ไม่ทำงาน
ทุกครั้งที่หุ่นยนต์กลับมาเพื่อชาร์จแบตเตอรี่ (กำหนดว่าอยู่ในมากกว่า 20 นาที) พื้นที่จะถูกเปลี่ยนเป็นพื้นที่อื่น
โปรดทราบ ซอฟต์แวร์เป็นระเบียบที่น่ากลัวมาก แต่ก็ใช้งานได้ดีไปเรื่อย ๆ
ขั้นตอนที่ 4: ขั้นตอนที่ 4: การเปิดใช้งานซอฟต์แวร์
ในการรันซอฟต์แวร์ เราต้องทำอะไรซักอย่าง
ฉันเพิ่มลงใน cronJob
*/5 * * * * /root/GrassCtrl/GrassCtl
ไปยังไฟล์
/etc/crontabs/root
จากนั้นเพื่อที่จะเปิด cronjobs ฉันทำ
/etc/init.d/cron enable
อย่างดีที่สุดที่ฉันบอกได้ ตอนนี้หุ่นยนต์จะเปลี่ยนระหว่างพื้นที่เริ่มตัดหญ้า 1 หรือ 2 และจะเปลี่ยนสิ่งที่ตัดหญ้าทุกครั้งที่มีการชาร์จแบตเตอรี่
และใช่ ตอนนี้มันได้ทุกอย่างแล้ว
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง