สารบัญ:
- ขั้นตอนที่ 1: รับชิ้นส่วนที่จำเป็น
- ขั้นตอนที่ 2: (ด้วย MyoWare) เตรียมอิเล็กโทรดและเชื่อมต่อ
- ขั้นตอนที่ 3: (ด้วย MyoWare) เชื่อมต่อเซ็นเซอร์กับบอร์ด Arduino
- ขั้นตอนที่ 4: (ไม่มี MyoWare) สร้างวงจรปรับสภาพสัญญาณ
- ขั้นตอนที่ 5: (ไม่มี MyoWare) เชื่อมต่ออิเล็กโทรดกับวงจรและ Arduino
- ขั้นตอนที่ 6: รหัส!!
- ขั้นตอนที่ 7: ผลลัพธ์สุดท้าย
วีดีโอ: ดนตรีของกล้ามเนื้อด้วย Arduino: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
สวัสดีทุกคน นี่เป็น Instructables แรกของฉัน โปรเจ็กต์นี้ได้รับแรงบันดาลใจหลังจากดูโฆษณาวิดีโอ Old Spice Muscle Music ซึ่งเราสามารถดูว่า Terry Crews เล่นเครื่องดนตรีต่างๆ ด้วยสัญญาณ EMG ได้อย่างไร
เราวางแผนที่จะเริ่มต้นการเดินทางนี้ด้วยโครงการแรกนี้ ซึ่งเราสร้างสัญญาณคลื่นสี่เหลี่ยมที่มีความถี่ที่แตกต่างกันไปตามแอมพลิจูดของสัญญาณ EMG ที่ได้รับ ต่อมาสัญญาณนี้จะเชื่อมต่อกับลำโพงเพื่อเล่นความถี่นั้น
ในการสร้างโครงการนี้ เราจะใช้เป็นแกนหลัก Arduino UNO และ MyoWare Muscle Sensor หากคุณไม่สามารถรับ MyoWare Sensor ได้ ไม่ต้องกังวล เราจะอธิบายวิธีการสร้างของคุณเอง ซึ่งค่อนข้างยุ่งยากเล็กน้อย แต่ก็คุ้มค่าที่จะลอง เพราะคุณจะได้เรียนรู้มากมาย!!
มาเริ่มกันเลยดีกว่า
ขั้นตอนที่ 1: รับชิ้นส่วนที่จำเป็น
มีสองวิธีในการสร้างโครงการนี้: การใช้เซ็นเซอร์ MyoWare (ขั้นตอนที่ 2 และ 3) และไม่ใช้ (ขั้นตอนที่ 4 และ 5)
การใช้เซ็นเซอร์ MyoWare นั้นง่ายกว่าเพราะไม่ต้องการความรู้ขั้นสูงเกี่ยวกับอุปกรณ์อิเล็กทรอนิกส์ เพียงแค่เสียบปลั๊กแล้วใช้งานได้เลย หากไม่มี MyoWare คุณจะต้องมีความรู้เกี่ยวกับ OpAmp เช่น การขยายเสียงและการกรอง ตลอดจนการแก้ไขสัญญาณ วิธีนี้ยากกว่า แต่ช่วยให้คุณเข้าใจสิ่งที่อยู่เบื้องหลังวงจร MyoWare
สำหรับวิธีการของ MyoWare เราจำเป็นต้องมีส่วนประกอบและเครื่องมือดังต่อไปนี้:
- มายโอแวร์ มัสเซิล เซนเซอร์ (Sparkfun)
- Arduino UNO (อเมซอน)
- วิทยากร
- เขียงหั่นขนม
- สาย 22 AWG
- อิเล็กโทรด 3 x 3M (อเมซอน)
- ไขควง
- 2 x คลิปจระเข้
- สาย USB Arduino
- เครื่องปอกสายไฟ
- 1 x 1000uF (อเมซอน)
หากไม่มี MyoWare คุณจะต้องมีส่วนประกอบก่อนหน้า (ไม่มี MyoWare) รวมถึง:
- แหล่งจ่ายไฟที่มี +12 V, -12 V และ 5 V (คุณสามารถสร้างของคุณเองด้วยคอมพิวเตอร์ PS ตามที่แสดงในคำแนะนำนี้)
- หากสายไฟ AC ของพาวเวอร์ซัพพลายเป็นแบบ 3 ขา คุณอาจต้องใช้อะแดปเตอร์แบบสามขา/สองขาหรือปลั๊กแบบสิบแปดมงกุฎ (บางครั้งง่ามที่เกินก็สร้างเสียงรบกวนที่ไม่ต้องการได้)
- มัลติมิเตอร์
- เครื่องขยายเสียง Intrumentation AD620
- OpAmps 2 x LM324 (หรือใกล้เคียง)
- ไดโอด 3 x 1N4007 (หรือใกล้เคียง)
-
ตัวเก็บประจุ
-
ไม่มีโพลาไรซ์ (อาจเป็นตัวเก็บประจุแบบเซรามิก โพลีเอสเตอร์ ฯลฯ)
- 2 x 100 nF
- 1 x 120 nF
- 1 x 820 nF
- 1 x 1.2 ยูเอฟ
- 1 x 1 ยูเอฟ
- 1 x 4.7 ยูเอฟ
- 1 x 1.8 ยูเอฟ
-
โพลาไรซ์ (ตัวเก็บประจุด้วยไฟฟ้า)
2 x 1mF
-
-
ตัวต้านทาน
- 1 x 100 โอห์ม
- 1 x 3.9k โอห์ม
- 1 x 5.6k โอห์ม
- 1 x 1.2k โอห์ม
- 1 x 2.7k โอห์ม
- 3 x 8.2k โอห์ม
- 1 x 6.8k โอห์ม
- 2 x 1k โอห์ม
- 1 x 68k โอห์ม
- 1 x 20k โอห์ม
- 4 x 10k โอห์ม
- 6 x 2k โอห์ม
- 1 x 10k โอห์มโพเทนชิโอมิเตอร์
ขั้นตอนที่ 2: (ด้วย MyoWare) เตรียมอิเล็กโทรดและเชื่อมต่อ
สำหรับส่วนนี้ เราต้องใช้ MyoWare Sensor และ 3 อิเล็กโทรด
หากคุณมีอิเล็กโทรดขนาดใหญ่เหมือนที่เราทำ คุณต้องตัดขอบเพื่อลดขนาดเส้นผ่านศูนย์กลาง มิฉะนั้น อิเล็กโทรดจะปิดกั้นอิเล็กโทรดอื่นซึ่งจะทำให้สัญญาณรบกวน
เชื่อมต่อ MyoWare ตามที่ระบุไว้ในหน้า 4 ของคู่มือเซนเซอร์
ขั้นตอนที่ 3: (ด้วย MyoWare) เชื่อมต่อเซ็นเซอร์กับบอร์ด Arduino
บอร์ด MyoWare มี 9 Pins: RAW, SHID, GND, +, -, SIG, R, E และ M สำหรับโปรเจ็กต์นี้ เราต้องการเพียง " +" เพื่อเชื่อมต่อ 5V, " - " สำหรับ Ground และ " SIG " สำหรับ สัญญาณเอาท์พุต เชื่อมต่อกับสายเคเบิลขนาดใหญ่ 3 เส้น (~2 ฟุต)
ดังที่กล่าวไว้ข้างต้น พิน "+" จะต้องเชื่อมต่อกับพิน 5V ของ Arduino, "-" กับ GND และสำหรับ SIG เราจำเป็นต้องมีตัวกรองเพิ่มเติมเพื่อหลีกเลี่ยงการเปลี่ยนแปลงแอมพลิจูดของสัญญาณอย่างกะทันหัน
สำหรับลำโพงเราต้องเชื่อมต่อสาย Positive กับพิน 13 และ Negative กับ GND เท่านั้น
และเราพร้อมสำหรับโค้ด!!!
ขั้นตอนที่ 4: (ไม่มี MyoWare) สร้างวงจรปรับสภาพสัญญาณ
วงจรนี้ถูกรวมเข้าด้วยกัน 8 ขั้นตอน:
- เครื่องขยายเสียงเครื่องมือ
- กรองผ่านต่ำ
- ตัวกรองความถี่สูง
- อินเวอร์เตอร์แอมพลิฟายเออร์
- วงจรเรียงกระแสความแม่นยำคลื่นเต็ม
- ตัวกรองสัญญาณความถี่ต่ำแบบพาสซีฟ
- แอมพลิฟายเออร์ดิฟเฟอเรนเชียล
- Clipper ขนานแบบลำเอียง
1. เครื่องขยายเสียงเครื่องมือ
ขั้นตอนนี้ใช้เพื่อขยายสัญญาณล่วงหน้าด้วยอัตราขยาย 500 และกำจัดสัญญาณ 60 Hz ที่อาจอยู่ในระบบ สิ่งนี้จะทำให้เราได้รับสัญญาณที่มีแอมพลิจูดสูงสุด 200 mV
2. ตัวกรองสัญญาณความถี่ต่ำ
ตัวกรองนี้ใช้เพื่อขจัดสัญญาณใดๆ ที่สูงกว่า 300 Hz
3. ตัวกรองความถี่สูง
ตัวกรองนี้ใช้เพื่อหลีกเลี่ยงสัญญาณที่ต่ำกว่า 20 Hz ที่เกิดจากการเคลื่อนที่ของอิเล็กโทรดขณะสวมใส่
4. อินเวอร์เตอร์แอมพลิฟายเออร์
ด้วยอัตราขยาย 68 แอมพลิฟายเออร์นี้จะสร้างสัญญาณที่มีแอมพลิจูดตั้งแต่ - 8 ถึง 8 V
5. วงจรเรียงกระแสความแม่นยำคลื่นเต็ม
วงจรเรียงกระแสนี้แปลงสัญญาณลบใดๆ ให้เป็นสัญญาณบวก เหลือเพียงสัญญาณบวกเท่านั้น สิ่งนี้มีประโยชน์เนื่องจาก Arduino ยอมรับเฉพาะสัญญาณตั้งแต่ 0 ถึง 5 V ในอินพุตแบบอะนาล็อก
6. ฟิลเตอร์ Low-pass แบบพาสซีฟ
เราใช้ตัวเก็บประจุแบบอิเล็กโทรไลต์ขนาด 2 x 1000uF เพื่อหลีกเลี่ยงการเปลี่ยนแปลงแอมพลิจูดอย่างกะทันหัน
7. แอมพลิฟายเออร์ดิฟเฟอเรนเชียล
หลังจากสเตจ 6 เราพบว่าสัญญาณของเรามีออฟเซ็ต 1.5 V ซึ่งหมายความว่าสัญญาณของเราไม่สามารถลงไปที่ 0 V ได้เพียง 1.5 V และสูงสุด 8 โวลต์ดิฟเฟอเรนเชียลแอมพลิฟายเออร์จะใช้สัญญาณของ 1.5 V (ได้มากับตัวแบ่งแรงดันและ 5V ปรับด้วยโพเทนชิออมิเตอร์ 10k) และสัญญาณที่เราต้องการจะแก้ไขและจะพัก 1.5 V ให้สัญญาณของกล้ามเนื้อทำให้เรามีสัญญาณที่สวยงามด้วยค่าต่ำสุด 0 V และสูงสุด จาก 6.5 โวลต์
8. คลิปเปอร์คู่ขนานลำเอียง
สุดท้าย ดังที่เราได้กล่าวไว้ก่อนหน้านี้ว่า Arduino จะรับเฉพาะสัญญาณที่มีแอมพลิจูดสูงสุด 5 โวลต์ เพื่อลดแอมพลิจูดสูงสุดของสัญญาณ เราจำเป็นต้องกำจัดแรงดันไฟฟ้าที่สูงกว่า 5 โวลต์ Clipper นี้จะช่วยให้เราบรรลุเป้าหมายนั้น
ขั้นตอนที่ 5: (ไม่มี MyoWare) เชื่อมต่ออิเล็กโทรดกับวงจรและ Arduino
อิเล็กโทรดที่วางอยู่ในลูกหนูคืออิเล็กโทรด 1, 2 และอิเล็กโทรดที่อยู่ใกล้กับข้อศอกมากที่สุดเรียกว่าอิเล็กโทรดอ้างอิง
อิเล็กโทรด 1 และ 2 เชื่อมต่อกับอินพุต + และ - ของ AD620 ไม่สำคัญว่าจะเรียงลำดับอย่างไร
อิเล็กโทรดอ้างอิงเชื่อมต่อกับ GND
สัญญาณที่กรองแล้วจะไปที่ขา A0 ของ Arduino โดยตรง
**อย่าลืม GND ของ ARDUINO กับ GND ของวงจร**
ขั้นตอนที่ 6: รหัส!!
ในที่สุดรหัส
1. อันแรกคือการกวาดความถี่จาก 400 Hz ถึง 912 Hz ขึ้นอยู่กับแอมพลิจูดของสัญญาณที่ได้รับจากลูกหนู
2. อันที่สองคืออ็อกเทฟที่สามของสเกลนายกเทศมนตรี C ขึ้นอยู่กับแอมพลิจูดที่จะเลือกโทนเสียง
คุณสามารถหาความถี่ในวิกิพีเดียได้ ไม่ต้องสนใจทศนิยม
ขั้นตอนที่ 7: ผลลัพธ์สุดท้าย
นี่คือผลลัพธ์ที่ได้ คุณสามารถแก้ไขโค้ดเพื่อเล่นโน้ตที่คุณต้องการได้!!!
ขั้นตอนต่อไปของโครงการนี้คือการรวมสเต็ปเปอร์มอเตอร์และแอคทูเอเตอร์ประเภทอื่นเพื่อเล่นเครื่องดนตรี และยังออกกำลังกายเพื่อรับสัญญาณที่แรง
ตอนนี้ทำให้กล้ามเนื้อของคุณเล่นเพลง มีความสุข!!:)
แนะนำ:
การออกแบบเกมในการสะบัดใน 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++)
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino