สารบัญ:

หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!: 7 ขั้นตอน (พร้อมรูปภาพ)
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!: 7 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!: 7 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: เปิดฉากไล่ล่า !! | ไฮไลต์ละคร เผาขน EP.1 | Ch7HD 2024, พฤศจิกายน
Anonim
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!
หุ่นยนต์หนีอุปสรรคด้วยบุคลิกภาพ!

ไม่เหมือนกับ 'บอท' ที่โรมมิ่งส่วนใหญ่ อันที่จริง 'บอทนี้โรมมิ่ง' ในแบบที่ดูเหมือน 'กำลังคิด' อยู่! ด้วยไมโครคอนโทรลเลอร์ BASIC Stamp (Basic Atom, Parallax Basic Stamps, Coridium Stamp เป็นต้น) แชสซีบางชนิด เซ็นเซอร์สองสามตัว และโค้ดที่ซับซ้อนจากคำแนะนำนี้ คุณสามารถสร้างหุ่นยนต์ที่จะทำการเคลื่อนไหวที่คุณไม่เคยแม้แต่จะ ตั้งโปรแกรมไว้แล้ว! นี่คือวิดีโอ (เป็นประเภทที่มีคุณภาพต่ำ แต่ฉันกำลังทำงานอยู่ (ฉันยังคงพยายามหาส่วนที่ช้าเกินไป)

ขั้นตอนที่ 1: เซ็นเซอร์

(ชื่อ?)…งั้นเรียกบ๊อบดีกว่า บ๊อบมีเซ็นเซอร์ห้าตัว

  • Ultrasonic Rangefinder (หรือที่เรียกว่า "โซนาร์")
  • 2 Sharp GP2D12 IR Sensors
  • 1 Standard IR Assembly (เพิ่มเติมเกี่ยวกับเรื่องนี้ในภายหลัง)
  • 1 CdS (แคดเมียมซัลไฟด์) โฟโตเซลล์

เครื่องวัดระยะด้วยคลื่นเสียงความถี่สูงช่วยให้ Bob มองเห็นสิ่งกีดขวางที่อยู่ตรงหน้าเขา พวกเขายังบอกเขาว่าวัตถุนั้นอยู่ห่างจากเขาเท่าใด สามารถหาได้จากหลายแหล่ง คุณสามารถค้นหาได้จาก (Parallax; พวกเขาเรียกว่า "Ping))"), Acroname, HVW Technologies และไซต์อื่น ๆ อีกมากมาย ไม่ว่าคุณจะไปหามันที่ไหน พวกมันทั้งหมดมีราคาเท่ากัน (~ $30) เซ็นเซอร์ IR สองตัวที่ผลิตโดย Sharp นั้นใช้งานง่ายมากเมื่อใช้สำหรับการตรวจจับวัตถุอย่างง่ายเช่นในกรณีนี้ คุณสามารถหาซื้อได้ที่ร้านค้าออนไลน์ของเดือนพฤษภาคม เช่น ร้านค้าตามรายการด้านบน พวกเขาช่วยให้ Bob มองเห็นสิ่งกีดขวางที่เครื่องวัดระยะแบบอัลตราโซนิกไม่สามารถทำได้ อุปสรรคที่เข้ามาใกล้ด้านข้างของแชสซีมากเกินไป มีค่าใช้จ่ายประมาณ 12 ถึง 15 เหรียญขึ้นอยู่กับที่คุณได้รับ ฉันสร้าง "การชุมนุม IR" ขึ้นเอง ดูขั้นตอนที่ 2 สำหรับการประกอบ CdS Photocell (หรือตัวต้านทานแบบปรับแสงได้ ตามที่คุณต้องการ) ใช้สำหรับตรวจจับการเปลี่ยนแปลงของแสงโดยรอบ บ๊อบใช้พวกมันเพื่อให้รู้ว่าเขาอยู่ในห้องมืดหรือสว่าง หากใครก็ตามที่มีประสบการณ์กับเรนเจอร์ IR ของ Sharp มาก่อน FYI พวกเขาจะไม่ถูกนำมาใช้สำหรับการวัดระยะทางจริงในหุ่นยนต์ตัวนี้ ฉันไม่มี ADC (Analog-to-Digital Converter) และฉันก็ไม่รู้ว่าจะใช้มันอย่างไร พวกเขาเพียงแค่ให้สัญญาณสูงหรือต่ำไปยังไมโครคอนโทรลเลอร์ BS2 เอกสารข้อมูลสำหรับเซ็นเซอร์ Sharp IR และ Ping))) สามารถพบได้บนอินเทอร์เน็ต แต่ถ้าคุณขี้เกียจเหมือนฉัน คุณสามารถเลื่อนลงไปอีกเล็กน้อยที่นั่น!

ขั้นตอนที่ 2: ฮาร์ดแวร์ สมอง และส่วนประกอบอื่นๆ

ฮาร์ดแวร์ สมอง และส่วนประกอบอื่นๆ
ฮาร์ดแวร์ สมอง และส่วนประกอบอื่นๆ
ฮาร์ดแวร์ สมอง และส่วนประกอบอื่นๆ
ฮาร์ดแวร์ สมอง และส่วนประกอบอื่นๆ

ตกลง. ในการเริ่มต้น ฮาร์ดแวร์ที่ใช้สำหรับหุ่นยนต์ตัวนี้เป็นส่วนหนึ่งของชุดอุปกรณ์ที่ฉันได้รับ เป็นชุด "Boe-Bot" จาก Parallax (https://www. Parallax.com) แต่การออกแบบนี้มีความยืดหยุ่นสูง คุณสามารถใช้แชสซีใดก็ได้ที่คุณต้องการ เพียงตรวจสอบให้แน่ใจว่า 1) เครื่องวัดระยะอัลตราโซนิกอยู่ที่ระดับความสูงสูงสุดของหุ่นยนต์ เพื่อไม่ให้กระทบกับพื้นราวบันได ฯลฯ และ 2) เซ็นเซอร์อินฟราเรดทำมุมในลักษณะที่ พวกมันสามารถตรวจจับวัตถุที่อยู่ห่างจากหุ่นยนต์ประมาณ 1" ได้ ซึ่งจะช่วยป้องกันไม่ให้ชนขอบของสิ่งของที่อาจกระทบล้อได้ Boe-Board ของ Parallax ที่ติดอยู่บนแชสซีนั้นมาพร้อมกับชุด Boe-Bot ของฉัน บอร์ดพัฒนาที่สามารถใช้กับไมโครคอนโทรลเลอร์ Stamp ใดๆ ที่มีความต้องการแรงดันไฟฟ้าและเลย์เอาต์ของพินเหมือนกัน อินเทอร์เน็ตมีบอร์ดพัฒนา Stamp ที่แตกต่างกันมากมาย ราคา 65 ดอลลาร์จาก Parallax บนกระดานพัฒนาการในฐานะสมองของ Bob คือ BS2e (BASIC Stamp 2 e) ซึ่งโดยพื้นฐานแล้วเหมือนกับ BS2 ยกเว้นหน่วยความจำที่มากกว่า (RAM และ EEPROM) EEPROM ใช้สำหรับการจัดเก็บโปรแกรม และ RAM ใช้สำหรับจัดเก็บตัวแปร (แน่นอน เป็นการชั่วคราว) Bob อาจไม่ เป็นนักคิดที่เร็วที่สุดในโลก (~4,000 คำสั่ง/วินาที) แต่เดี๋ยวก่อน, ก็พอแล้ว. Bob เคลื่อนที่ผ่านเซอร์โวแบบหมุนต่อเนื่องสองตัวจาก Parallax ซึ่งเหมือนกับเซอร์โวหลายๆ ตัวที่มีแรงบิดมาก สำหรับน้ำผลไม้ เขามีชุดแบตเตอรี่ AA 4 เซลล์ (รวมเป็น 6V) ที่เชื่อมต่อกับตัวควบคุม 5V บนบอร์ดพัฒนา ซึ่งให้เอาต์พุตที่คงที่ คุณเดาได้เลยว่า 5V จะไม่ทอดส่วนประกอบ อุปกรณ์จำนวนมากสำหรับหุ่นยนต์ทำงานโดยใช้แหล่งจ่ายไฟ 5V หรือ 6V; ด้วยเหตุผลบางอย่างมันเป็นมาตรฐาน และคุณไม่ต้องการทอดส่วนประกอบเหล่านี้ มันมีราคาแพง BS2e มีตัวควบคุมภายใน แต่อย่าให้มากกว่า 9V หากคุณไม่ได้ใช้บอร์ดพัฒนา! นอกจากนี้ หากคุณไม่ได้ใช้ บอร์ดพัฒนา (ซึ่งมีตัวควบคุมอยู่เสมอ) ดังนั้นควรใช้ตัวควบคุม 5V หมายเหตุ: สำหรับการใช้พลังงาน Bob นั้นโลภมาก ใช้แบตเตอรี่แบบชาร์จไฟได้สำหรับสิ่งนี้ พวกมันมีอายุการใช้งานยาวนานกว่ามาก ฉันใช้ Energizer 4 ตัวแบบชาร์จไฟได้ @ 2500ma ต่ออัน ซึ่งทำให้อายุยืนยาวขึ้นอย่างแน่นอน

ขั้นตอนที่ 3: การประกอบวงจรเซ็นเซอร์วัดแสง

การประกอบวงจรเซนเซอร์แสง
การประกอบวงจรเซนเซอร์แสง

เซ็นเซอร์วัดแสงต้องมีวงจรเพื่อให้ BS2e ใช้งานได้อย่างเหมาะสม ฉันได้วงจรนี้มาจากหนังสือของ Parallax เล่มหนึ่ง (อันที่จริง เล่มที่มากับชุดอุปกรณ์ของฉัน) หมายเหตุ: PIN 6 เป็น PIN 1 จริงๆ สิ่งนี้ต้องตรงกับรหัสหรือคุณอาจสร้างความเสียหายให้กับส่วนประกอบอื่นๆ ระวังอย่าให้เลอะเทอะ

ขั้นตอนที่ 4: การประกอบ Dropoff Detector

การประกอบเครื่องตรวจจับ Dropoff
การประกอบเครื่องตรวจจับ Dropoff
การประกอบเครื่องตรวจจับ Dropoff
การประกอบเครื่องตรวจจับ Dropoff

สามารถนำมาประกอบกันบน PCB เปล่าได้ ฉันเพิ่งวิ่งไปที่ RadioShack และรับมาหนึ่งอันแล้วตัดบอร์ดให้พอดีกับวงจร ส่วนนี้มีความสำคัญ หากคุณทำสิ่งนี้ผิดพลาด Bob ผู้น่าสงสารอาจตายได้ เครื่องตรวจจับ IR คือ Panasonic PNA4601 แต่คุณสามารถรับได้จาก RatShack รวมถึงตัวต้านทานและ IR LED ไม่สำคัญว่าคุณจะได้ IR LED ขนาดใด เพียงแต่ต้องแน่ใจว่าไม่ใช่ IR โฟโต้ทรานซิสเตอร์ นั่นคืออุปกรณ์ที่แตกต่างกันโดยสิ้นเชิง นอกจากนี้ คุณต้องใช้ท่อหดแบบใช้ความร้อนหรือฟางบางชนิด (คุณสามารถพ่นสีให้เป็นสีดำได้) เพื่อทำให้ลำแสงของ IR LED แคบลง แต่จะต้องถูกขจัดออกให้หมด (ยกเว้นส่วนปลายของ LED) หรือเซ็นเซอร์ จะไม่ทำงาน. ฉันใช้ปลอกพลาสติกจาก Parallax คุณสามารถสั่งซื้อ LED และปลอกได้จากเว็บไซต์ของพวกเขา

น่าเสียดายที่ช่วงความถี่ของเครื่องตรวจจับ IR ที่ฉันใช้กว้างมาก ซึ่งหมายความว่ามีแนวโน้มที่จะถูกรบกวนมากขึ้น โชคดีที่ RadioShack เสนอตัวเลือกที่ปรับเป็น 38Khz เท่านั้น ซึ่งหมายความว่า Bob ไม่น่าจะทำอะไรแปลกๆ กับรีโมทคอนโทรลและอุปกรณ์อื่นๆ ที่ใช้ IR DP2D12 นั้นยอดเยี่ยมเพราะแทบไม่มีการรบกวนเนื่องจากเลนส์ขั้นสูง (เลนส์) และวงจรไฟฟ้า ในโครงการในอนาคต ฉันจะไม่ใช้เครื่องตรวจจับ IR แบบปกติ Sharp IR's ดีกว่าตัวรับ IR ธรรมดา หมายเหตุ: PIN 8 เป็น PIN 10 จริงๆ แล้ว PIN 9 ถูกต้อง

ขั้นตอนที่ 5: บ๊อบต้องการเสียง

บ๊อบต้องการเสียง!
บ๊อบต้องการเสียง!

เชื่อมต่อลำโพงเพียโซกับ PIN 5 และ - ลงกราวด์ บ๊อบต้องแสดงออก! piezospeaker ที่ดีที่สุดที่จะใช้คือแบบติดตั้งบนพื้นผิว พวกมันมักจะเป็น 5 โวลต์ มิฉะนั้น หากคุณใช้ตัวต้านทานที่มีพิกัดต่ำกว่า 5V คุณจะต้องมีตัวต้านทาน

ขั้นตอนที่ 6: การเพิ่ม 'ไฟหน้า'

ในการทำให้บ็อบดูเท่ขึ้นในความมืด เขาเปิดไฟหน้าเมื่อเข้าไปในห้องมืด ไฟ LED สีขาวใดๆ จะใช้ได้สำหรับสิ่งนี้ เนื่องจากวงจรนั้นง่ายมาก ฉันจะบอกคุณว่า: เพียงแค่ใช้ตัวต้านทาน 220ohm เพื่อจำกัดกระแส และหรือแน่นอน - ไปที่พื้น

ขั้นตอนที่ 7: เติมสมองของ Bob

นี่คือรหัสสำหรับบ๊อบ มันถูกแบ่งออกเป็นส่วน ๆ: การประกาศ (ค่าคงที่และตัวแปร), การเริ่มต้น, ลูป 'หลัก' และรูทีนย่อย ประเภทของการเขียนโปรแกรมที่ฉันใช้คือสถาปัตยกรรม FSM (Finite State Machine) ที่อิงตามสมมติฐาน โดยพื้นฐานแล้ว มันทำให้หุ่นยนต์ทำงานเร็วขึ้น และจัดระเบียบโค้ดได้ดีขึ้น หากคุณต้องการเข้าสู่ขอบเขตที่ค่อนข้างซับซ้อนนั้น โปรดอ่าน PDF ในหน้านี้ ฉันได้เพิ่มความคิดเห็น (ข้อความเป็นสีเขียว) เพื่อช่วยระบุส่วนต่างๆ ของโค้ด การเชื่อมต่อกับ BS2e ทั้งหมดมีการระบุไว้ด้านล่างอีกครั้ง

  • PIN 0 - 220ohm ตัวต้านทานต่อโฟโตเซลล์ CdS
  • PIN 5 - ตัวนำที่เป็นบวกของลำโพงเพียโซ
  • PIN 6 - เส้น SIG (สัญญาณ) ทางซ้าย GP2D12 (ซ้ายเมื่อมองหุ่นยนต์จากด้านบน)
  • PIN 8 - สาย SIG ด้านขวา GP2D12
  • PIN 9 - สาย OUT (เอาต์พุต) ของเครื่องตรวจจับ IR (เซ็นเซอร์ดรอปออฟ)
  • PIN 10 - 1Kohm ตัวต้านทานต่อขั้วบวกของ IR LED
  • PIN 15 - ตัวนำ SIG ของเครื่องวัดระยะแบบอัลตราโซนิก

รหัสของ Bob เขียนในลักษณะที่ 1) เขาหรือแน่นอน หลีกเลี่ยงวัตถุและการตกหล่น2) นับจำนวนครั้งที่เซ็นเซอร์แต่ละตัวถูกกระตุ้น และกำหนดว่าเขาอยู่ในจุดที่ไม่สามารถหลบหลีกได้หรือไม่3) สร้างหลอก- ตัวเลขสุ่มเพื่อสุ่มการเคลื่อนไหว4) เปิด "ไฟหน้า" หลังจากพบว่าเขาอยู่ในห้องมืดโดยใช้ตัวจับเวลาและ IF… แล้วข้อความฉันยังคงทำงานในส่วน 'ล่าช้า' มันเกี่ยวข้องกับเวลาคายประจุของตัวเก็บประจุสำหรับเซ็นเซอร์วัดแสง เช่นเดียวกับ BS2e ที่มีภาระมากเกินไป

แนะนำ: