วิธีการสร้างหุ่นยนต์ทำความสะอาดพื้นโดยใช้เซ็นเซอร์อัลตราโซนิก

หุ่นยนต์ทำความสะอาดพื้นอัตโนมัติไม่ใช่แนวคิดใหม่ แต่หุ่นยนต์เหล่านี้มีปัญหาสำคัญ มีราคาแพงมาก จะเกิดอะไรขึ้นถ้าเราสามารถสร้างหุ่นยนต์ทำความสะอาดพื้นราคาประหยัดที่มีประสิทธิภาพเทียบเท่ากับหุ่นยนต์ที่มีขายในท้องตลาด หุ่นยนต์นี้จะใช้เซ็นเซอร์อัลตราโซนิกและจะหลีกเลี่ยงสิ่งกีดขวางใด ๆ ที่ขวางทาง การทำเช่นนี้จะทำความสะอาดทั้งห้อง

วิธีใช้อัลตราโซนิกเซนเซอร์เพื่อสร้างหุ่นยนต์ทำความสะอาดพื้นอัตโนมัติ

ดังที่เราทราบบทคัดย่อของโครงการแล้ว ให้เรารวบรวมข้อมูลเพิ่มเติมเพื่อเริ่มทำงาน

ขั้นตอนที่ 1: รวบรวมส่วนประกอบ

แนวทางที่ดีที่สุดในการเริ่มต้นโครงการคือการจัดทำรายการส่วนประกอบทั้งหมดตั้งแต่เริ่มต้นและศึกษาข้อมูลโดยย่อของแต่ละองค์ประกอบ สิ่งนี้ช่วยเราในการหลีกเลี่ยงความไม่สะดวกระหว่างโครงการ รายการส่วนประกอบทั้งหมดที่ใช้ในโครงการนี้มีให้ด้านล่าง

ขั้นตอนที่ 2: ศึกษาส่วนประกอบ

เมื่อเรามีรายการส่วนประกอบทั้งหมดแล้วให้เราก้าวไปข้างหน้าและศึกษาการทำงานของแต่ละองค์ประกอบสั้น ๆ

Arduino nano เป็นบอร์ดไมโครคอนโทรลเลอร์ที่ใช้ในการควบคุมหรือทำงานต่าง ๆ ในวงจร เราเผาก รหัส C บน Arduino Nano เพื่อบอกบอร์ดไมโครคอนโทรลเลอร์ว่าต้องดำเนินการอย่างไรและอย่างไร Arduino Nano มีฟังก์ชันการทำงานเหมือนกับ Arduino Uno ทุกประการ แต่มีขนาดค่อนข้างเล็ก ไมโครคอนโทรลเลอร์บนบอร์ด Arduino Nano คือ ATmega328p.

L298N เป็นวงจรรวมกระแสสูงและแรงดันสูง เป็นสะพานคู่แบบคู่ที่ออกแบบมาเพื่อรับลอจิก TTL มาตรฐาน มีอินพุตเปิดใช้งานสองช่องที่ช่วยให้อุปกรณ์ทำงานได้อย่างอิสระ มอเตอร์สองตัวสามารถเชื่อมต่อและใช้งานได้ในเวลาเดียวกัน ความเร็วของมอเตอร์แตกต่างกันไปตามพิน PWM

บอร์ด HC-SR04 เป็นเซ็นเซอร์อัลตราโซนิกซึ่งใช้เพื่อกำหนดระยะห่างระหว่างวัตถุสองชิ้น ประกอบด้วยเครื่องส่งและเครื่องรับ เครื่องส่งจะแปลงสัญญาณไฟฟ้าเป็นสัญญาณอัลตราโซนิกและเครื่องรับจะแปลงสัญญาณอัลตราโซนิกกลับเป็นสัญญาณไฟฟ้า เมื่อเครื่องส่งส่งคลื่นอัลตร้าโซนิคจะสะท้อนหลังจากชนกับวัตถุบางอย่าง ระยะทางคำนวณโดยใช้เวลาสัญญาณอัลตร้าโซนิคนั้นจะไปจากเครื่องส่งและกลับมาที่เครื่องรับ

ขั้นตอนที่ 3: การประกอบส่วนประกอบ

ตอนนี้เรารู้แล้วว่าส่วนประกอบทั้งหมดทำงานอย่างไร ให้เราประกอบส่วนประกอบทั้งหมดและเริ่มสร้างหุ่นยนต์

ใช้โครงล้อรถยนต์และติดแปรงแสดงที่ด้านหน้าของ Chasses ติดสก๊อตไบรท์ไว้ข้างใต้หุ่นยนต์ ตรวจสอบให้แน่ใจว่าอยู่ด้านหลังแปรงรองเท้า ตอนนี้แนบเขียงหั่นขนมเล็ก ๆ ที่ด้านบนของตัวตัดและด้านหลังแนบไดรเวอร์มอเตอร์ ทำการเชื่อมต่อมอเตอร์กับไดรเวอร์มอเตอร์อย่างเหมาะสมและเชื่อมต่อหมุด f มอเตอร์ไดรเวอร์กับ Arduino อย่างระมัดระวัง ติดตั้งแบตเตอรี่ที่ด้านหลังแชสซี แบตเตอรี่จะเปิดเครื่องขับมอเตอร์ซึ่งจะจ่ายไฟให้กับมอเตอร์ Arduino จะใช้พลังงานจากไดรเวอร์มอเตอร์ ขา Vcc และพื้นของเซ็นเซอร์อัลตราโซนิกจะเชื่อมต่อกับ 5V และกราวด์ของ Arduino

ขั้นตอนที่ 4: เริ่มต้นกับ Arduino

หากคุณไม่คุ้นเคยกับ Arduino IDE อยู่แล้ว ไม่ต้องกังวลเพราะขั้นตอนโดยขั้นตอนในการตั้งค่าและใช้งาน Arduino IDE กับบอร์ดไมโครคอนโทรลเลอร์ได้อธิบายไว้ด้านล่าง

  1. ดาวน์โหลด Arduino IDE เวอร์ชันล่าสุดจาก Arduino
  2. เชื่อมต่อบอร์ด Arduino Nano กับแล็ปท็อปของคุณและเปิดแผงควบคุม ในแผงควบคุมคลิกที่ฮาร์ดแวร์และเสียง. ตอนนี้คลิกที่อุปกรณ์และเครื่องพิมพ์ค้นหาพอร์ตที่บอร์ดไมโครคอนโทรลเลอร์ของคุณเชื่อมต่ออยู่ที่นี่ ในกรณีของฉันมันคือ COM14แต่จะแตกต่างกันในคอมพิวเตอร์เครื่องอื่น
  3. คลิกที่เมนูเครื่องมือและตั้งค่าบอร์ดเป็น Arduino นาโน
  4. ในเมนูเครื่องมือเดียวกันตั้งค่าพอร์ตเป็นหมายเลขพอร์ตที่คุณสังเกตเห็นก่อนหน้านี้ในไฟล์ อุปกรณ์และเครื่องพิมพ์.
  5. ในเมนูเครื่องมือเดียวกันตั้งค่าโปรเซสเซอร์เป็น ATmega328P (Bootloader เก่า)
  6. ดาวน์โหลดโค้ดที่แนบด้านล่างและวางลงใน Arduino IDE ของคุณ คลิกที่ ที่อัพโหลด ปุ่มเพื่อเบิร์นโค้ดบนบอร์ดไมโครคอนโทรลเลอร์ของคุณ

คลิกที่นี่เพื่อดาวน์โหลดรหัส

ขั้นตอนที่ 5: ทำความเข้าใจรหัส

โค้ดนี้ค่อนข้างแสดงความคิดเห็นและอธิบายตัวเองได้ดี แต่ถึงกระนั้นก็มีการอธิบายสั้น ๆ ด้านล่าง

1. ในตอนเริ่มต้น พินทั้งหมดของ Arduino ที่เราจะใช้งานจะถูกเตรียมข้อมูลเบื้องต้น

int enable1pin = 8; // พินสำหรับมอเตอร์ตัวแรก int motor1pin1=2; int motor1pin2 = 3; int enable2pin=9; // หมุดสำหรับมอเตอร์ตัวที่สอง int motor2pin1 = 4; int motor2pin2 = 5; const int trigPin = 11; // พินสำหรับอัลตราโซนิกเซนเซอร์ const int echoPin = 10; const int buzzPin = 6; ระยะเวลานาน // ตัวแปรสำหรับระยะลอยของเซนเซอร์อัลตราโซนิก;

2. การตั้งค่าเป็นโมฆะ ()เป็นฟังก์ชันที่เราตั้งค่าพินทั้งหมดที่จะใช้เป็น INPUT หรือ OUTPUT อัตราบอดยังถูกตั้งค่าในฟังก์ชันนี้ อัตราบอดคือความเร็วที่บอร์ดไมโครคอนโทรลเลอร์สื่อสารกับเซ็นเซอร์ที่ติดอยู่

การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); pinMode (trigPin, เอาท์พุท); pinMode (echoPin, อินพุต); pinMode (buzzPin, เอาท์พุท); pinMode (enable1pin, เอาท์พุท); pinMode (enable2pin, เอาท์พุท); pinMode (motor1pin1, เอาท์พุท); pinMode (motor1pin2, เอาท์พุท); pinMode (motor2pin1, เอาท์พุท); pinMode (motor2pin2, เอาท์พุท); }

3. ห่วงเป็นโมฆะ ()เป็นฟังก์ชันที่ทำงานอย่างต่อเนื่องเป็นวง ในลูปนี้เราได้บอกไมโครคอนโทรลเลอร์ว่าจะเดินหน้าต่อไปเมื่อใดหากไม่พบสิ่งกีดขวางในระยะ 50 ซม หุ่นยนต์จะหักเลี้ยวขวาเมื่อพบสิ่งกีดขวาง

โมฆะ loop () {digitalWrite (trigPin, LOW); ล่าช้าไมโครวินาที (2); digitalWrite (trigPin, สูง); ล่าช้าไมโครวินาที (10); digitalWrite (trigPin, LOW); ระยะเวลา = pulseIn (echoPin, HIGH); ระยะทาง = 0.034 * (ระยะเวลา / 2); if(distance>50) // เลื่อนไปข้างหน้าหากไม่พบสิ่งกีดขวาง { digitalWrite (enable1pin, HIGH); digitalWrite (enable2pin, สูง); digitalWrite (motor1pin1, สูง); digitalWrite (motor1pin2, LOW); digitalWrite (motor2pin1, สูง); digitalWrite (motor2pin2, LOW); } else if (ระยะ <50) // เลี้ยวขวาหักมุมหากพบสิ่งกีดขวาง {digitalWrite (enable1pin, HIGH); digitalWrite (enable2pin, สูง); digitalWrite (motor1pin1, สูง); digitalWrite (motor1pin2, LOW); digitalWrite (motor2pin1, LOW); digitalWrite (motor2pin2, LOW); } ล่าช้า (300); // ล่าช้า}

ตอนนี้ ตามที่เราได้พูดถึงทุกสิ่งที่คุณต้องการเพื่อสร้างหุ่นยนต์ทำความสะอาดพื้นอัตโนมัติ สนุกกับการสร้างหุ่นยนต์ทำความสะอาดพื้นราคาประหยัดและมีประสิทธิภาพของคุณเอง

Facebook Twitter Google Plus Pinterest