ARDUINO 334265-633524 เซ็นเซอร์แบบยืดหยุ่นยาว
การแนะนำ
เราใช้เวลามากมายในการพูดคุยเกี่ยวกับการตรวจจับสิ่งต่างๆ ที่ไม่ใช่เชิงกล จนลืมไปว่าเครื่องวัดความเร่งไม่ได้เป็นเพียงส่วนเดียวในเมือง เซ็นเซอร์แบบยืดหยุ่นเป็นหนึ่งในชิ้นส่วนที่ผู้ใช้ขั้นสูงมักมองข้าม แต่จะเป็นอย่างไรหากคุณต้องการตรวจสอบว่ามีบางสิ่งงออยู่หรือไม่ เช่น นิ้วหรือแขนตุ๊กตา (ต้นแบบของเล่นจำนวนมากดูเหมือนจะมีสิ่งนี้) ทุกครั้งที่คุณต้องการตรวจจับการงอหรือการงอ เซ็นเซอร์แบบยืดหยุ่นอาจเป็นชิ้นส่วนที่เหมาะสำหรับคุณ เซ็นเซอร์เหล่านี้มีหลายขนาด เซ็นเซอร์แบบยืดหยุ่นเป็นตัวต้านทานแบบแปรผันที่ตอบสนองต่อการงอ เมื่อไม่งอ จะวัดได้ประมาณ 22KΩ ถึง 40KΩ เมื่องอที่ 180º โปรดทราบว่าการงอจะตรวจจับได้ในทิศทางเดียวเท่านั้น และการอ่านค่าอาจสั่นเล็กน้อย ดังนั้น คุณจะได้ผลลัพธ์ที่ดีที่สุดในการตรวจจับการเปลี่ยนแปลงอย่างน้อย 10º นอกจากนี้ ตรวจสอบให้แน่ใจว่าคุณไม่ได้งอเซ็นเซอร์ที่ฐาน เนื่องจากเซ็นเซอร์จะไม่รับรู้ว่าเป็นการเปลี่ยนแปลง และอาจทำให้สายขาดได้ ฉันใช้เทปติดแผ่นกระดานหนาๆ ไว้ที่ฐานเสมอเพื่อไม่ให้มันงอตรงนั้น
การเชื่อมต่อและเหตุใด
เซ็นเซอร์แบบยืดหยุ่นจะเปลี่ยนความต้านทานเมื่อถูกงอ ดังนั้นเราจึงสามารถวัดการเปลี่ยนแปลงนั้นได้โดยใช้พินอนาล็อกของ Arduino แต่เพื่อทำเช่นนั้น เราต้องใช้ตัวต้านทานคงที่ (ไม่เปลี่ยนแปลง) ที่สามารถใช้ในการเปรียบเทียบนั้นได้ (เราใช้ตัวต้านทาน 22K) เรียกว่าตัวต้านทานแบบโวลท์tagตัวแบ่ง e และแบ่ง 5v ระหว่างเซนเซอร์แบบยืดหยุ่นและตัวต้านทาน การอ่านอนาล็อกบน Arduino ของคุณเป็นโวลท์tagอีมิเตอร์ ที่ 5V (สูงสุด) จะอ่านได้ 1023 และที่ 0V จะอ่านได้ 0 ดังนั้นเราจึงสามารถวัดปริมาณโวลท์ได้tage อยู่บนเซนเซอร์แบบยืดหยุ่นโดยใช้ analogRead และเราก็มีค่าการอ่านของเราแล้ว
จำนวน 5V ที่แต่ละส่วนได้รับนั้นแปรผันตามความต้านทาน ดังนั้นหากเซ็นเซอร์แบบยืดหยุ่นและตัวต้านทานมีค่าความต้านทานเท่ากัน 5V จะถูกแบ่งเท่าๆ กัน (2.5V) สำหรับแต่ละส่วน (ค่าอนาล็อก 512) ลองแกล้งทำเป็นว่าเซ็นเซอร์อ่านค่าความต้านทานได้เพียง 1.1K ตัวต้านทาน 22K จะดูดซับ 20V มากถึง 5 เท่า ดังนั้นเซ็นเซอร์แบบยืดหยุ่นจึงรับได้เพียง 23V เท่านั้น (ค่าอนาล็อก 46) \และถ้าเราหมุนเซ็นเซอร์แบบยืดหยุ่นไปรอบหลอด เซ็นเซอร์แบบยืดหยุ่นอาจมีค่าความต้านทาน 40K ดังนั้นเซ็นเซอร์แบบยืดหยุ่นจะดูดซับ 1.8V มากถึง 5 เท่าของตัวต้านทาน 22K ดังนั้นเซ็นเซอร์แบบยืดหยุ่นจึงรับได้ 3V (ค่าอนาล็อก 614)
รหัส
โค้ด Arduino สำหรับสิ่งนี้ทำได้ง่ายมาก เรากำลังเพิ่มการพิมพ์แบบอนุกรมและการหน่วงเวลาเพื่อให้คุณสามารถดูค่าการอ่านได้อย่างง่ายดาย แต่ไม่จำเป็นต้องมีอยู่หากคุณไม่ต้องการ ในการทดสอบของฉัน ฉันได้รับค่าการอ่านบน Arduino ระหว่าง 512 และ 614 ดังนั้นช่วงจึงไม่ดีที่สุด แต่การใช้ฟังก์ชัน map() คุณสามารถแปลงค่าดังกล่าวเป็นช่วงที่ใหญ่กว่าได้ int flexSensorPin = A0; //analog pin 0
Exampรหัส
void setup(){ Serial.begin(9600); }void loop(){int flexSensorReading = analogRead(flexSensorPin); Serial.println(flexSensorReading) //ในการทดสอบของฉัน ฉันได้รับค่าการอ่านบน Arduino ระหว่าง 512 และ 614 //การใช้ map() คุณสามารถแปลงค่าดังกล่าวเป็นช่วงที่กว้างขึ้น เช่น 0-100 int flex0to100 = map(flexSensorReading, 512, 614, 0, 100); Serial.println(flex0to100); delay(250); //ใส่ไว้เพื่อลดความเร็วเอาต์พุตเพื่อให้อ่านได้ง่ายขึ้น
เอกสาร / แหล่งข้อมูล
![]() |
ARDUINO 334265-633524 เซ็นเซอร์แบบยืดหยุ่นยาว [พีดีเอฟ] คู่มือการใช้งาน 334265-633524, 334265-633524 เซ็นเซอร์ Flex ยาว, เซ็นเซอร์ Flex ยาว, Flex ยาว, ยาว |