» หัวข้อ » เคล็ดลับ »เซ็นเซอร์ IR สำหรับ Arduino และอีกมากมาย

เซ็นเซอร์ IR สำหรับ Arduino และไม่เพียง



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

เซ็นเซอร์ IR สำหรับ Arduino และไม่เพียง


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



รูปแบบถูกออกแบบมาเพื่อให้การอ่านไม่สะดวก จุดสามจุดที่กำหนดเป็น A0 ต้องเชื่อมต่อเข้าด้วยกัน สองจุดที่กำหนดเป็น D0 - เช่นกัน ดังนั้นจึงชัดเจนว่าเชื่อมต่อกับอะไรและทำงานอย่างไร ไม่มีปริศนา หากคุณรวบรวมเซ็นเซอร์จากนักออกแบบ pinout ของหวีบนบอร์ดที่รวมอยู่ในชุดจะเป็นดังนี้:



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

// คัดลอกโค้ดนี้ใน ide ของ arduino จากบรรทัดนี้

// note: - รหัสนี้ใช้สำหรับค่าอนาล็อก

int sensor = A0; // การเตรียมใช้งานหมุดแอนะล็อก

int buzzer = 3; // การเริ่มต้นพินออด

ค่า int;

การตั้งค่าเป็นโมฆะ () {

Serial.begin (9600);

pinMode (เซ็นเซอร์, อินพุต); // assing ชนิดโหมดพินของพินเป็นอินพุตหรือเอาต์พุต

pinMode (ออดสัญญาณออก);

}

void loop () {

value = analogRead (เซ็นเซอร์); // อ่าน valus จากเซ็นเซอร์

value = map (ค่า 0.1023,0,255); // การจับคู่ค่าจาก 0 ถึง 1,023 b / w 0 ถึง 255

digitalWrite (เสียงสัญญาณค่า); // การเปิดหรือปิดเสียงสัญญาณเตือนด้วยค่าที่แมป

}


และดิจิตอล - ด้วยภาพร่างอื่น:

// คัดลอกโค้ดนี้ใน ide ของ arduino จากบรรทัดนี้

// หมายเหตุ: - รหัสนี้ใช้สำหรับค่าดิจิทัล

int sensor_digital = 2; // การเริ่มต้นพินดิจิตอล

int buzzer = 3;

ค่า int;

การตั้งค่าเป็นโมฆะ () {

Serial.begin (9600);

pinMode (เซ็นเซอร์_digital, อินพุต);

pinMode (ออดสัญญาณออก);

}

void loop () {

value = digitalRead (sensor_digital); // อ่านข้อมูลดิจิตอลจากเซ็นเซอร์

digitalWrite (เสียงสัญญาณค่า); // การเปิดหรือปิดออด

}


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

เหมาะสำหรับหัวข้อ

หัวข้อที่เกี่ยวข้อง

เพิ่มความคิดเห็น

    • รอยยิ้มรอยยิ้มxaxaตกลงdontknowyahooNea
      นายรอยขีดข่วนคนโง่ใช่ใช่ใช่ก้าวร้าวลับ
      ขอโทษเต้นdance2dance3ให้อภัยช่วยเหลือเครื่องดื่ม
      หยุดเพื่อนดีgoodgoodนกหวีดหน้ามืดตามัวลิ้น
      ควันการตบมือเครย์ประกาศเป็นขี้ปากดอน t_mentionดาวน์โหลด
      ความร้อนโมโหlaugh1ภาคตะวันออกเฉียงเหนือประชุมmoskingเชิงลบ
      not_iข้าวโพดคั่วลงโทษอ่านทำให้ตกใจกลัวค้นหา
      ยั่วยุthank_youนี้to_clueumnikรุนแรงเห็นด้วย
      ไม่ดีbeeeblack_eyeblum3หน้าแดงโม้ความเบื่อ
      เซ็นเซอร์การหยอกล้อsecret2ขู่ชัยชนะYusun_bespectacled
      shokrespektฮ่า ๆprevedยินดีต้อนรับkrutoyya_za
      ya_dobryiผู้ช่วยne_huliganne_othodiFLUDห้ามใกล้

เราแนะนำให้คุณอ่าน:

มอบให้กับสมาร์ทโฟน ...