สารบัญ:

การพิมพ์ด้วย EMG โดยใช้ MyoWare: 8 ขั้นตอน
การพิมพ์ด้วย EMG โดยใช้ MyoWare: 8 ขั้นตอน

วีดีโอ: การพิมพ์ด้วย EMG โดยใช้ MyoWare: 8 ขั้นตอน

วีดีโอ: การพิมพ์ด้วย EMG โดยใช้ MyoWare: 8 ขั้นตอน
วีดีโอ: Making a Robotic Hand with EMG Sensor | Liono Maker 2024, พฤศจิกายน
Anonim
การพิมพ์ด้วย EMG โดยใช้ MyoWare
การพิมพ์ด้วย EMG โดยใช้ MyoWare

ผู้เขียน:

L. Elizabeth Crawford & Dylan T. Vavra

บทนำ:

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

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

ความหวังของเราคือคนอื่น ๆ จะสามารถเลียนแบบเทคโนโลยี DIY EMG นี้ ปรับให้เข้ากับความต้องการเฉพาะของพวกเขา และใช้สำหรับแอปพลิเคชันที่น่าสนใจจำนวนมาก เราใช้มันในห้องปฏิบัติการจิตวิทยาเชิงทดลองที่มหาวิทยาลัยริชมอนด์เพื่อทำซ้ำการวิจัยที่แสดงให้เห็นว่าผู้คนเลียนแบบการแสดงออกทางสีหน้าของผู้อื่น

ขั้นตอนที่ 1: รวบรวมวัสดุของคุณ

รวบรวมวัสดุของคุณ
รวบรวมวัสดุของคุณ

วัสดุ:

  • คอมพิวเตอร์
  • MaKey MaKey พร้อมสาย USB ที่มาพร้อมกับ (คุณควรจะทำสิ่งนี้กับ Arduino Leonardo ได้เช่นกัน แต่เรายังไม่ได้ลอง)
  • ตัวแยกพลังงาน USB (เว้นแต่แล็ปท็อปที่ใช้พลังงานจากแบตเตอรี่หมด) เช่น Adafruit USB Isolator - USB ความเร็วต่ำ/เต็มแบบแยก 100mA (ไม่มีภาพ)
  • เซ็นเซอร์ MyoWare
  • อิเล็กโทรด (x3 ต่อเซ็นเซอร์ MyoWare) - เราใช้ขั้วไฟฟ้า EMG/ECG/EKG แบบใช้แล้วทิ้งของ Covidien Kendall 1" (24 มม.)
  • ส่วนหัวแบบแยกส่วน (เราใช้ส่วนหัวรูปตัว L)
  • สายไฟพร้อมขั้วต่อตัวผู้ที่ปลายด้านหนึ่ง ตัวเมียที่ปลายอีกด้านหนึ่ง
  • ประสาน
  • เทปพันสายไฟ

เครื่องมือ:

  • หัวแร้ง
  • เครื่องตัดลวด
  • ตัวแยกสายไฟ

ซอฟต์แวร์:

Arduino IDE พร้อมส่วนเสริม MaKey MaKey

ขั้นตอนที่ 2: เตรียมเซ็นเซอร์ MyoWare

เตรียมเซ็นเซอร์ MyoWare
เตรียมเซ็นเซอร์ MyoWare

1. แยกชุดส่วนหัวแบบแยกส่วนสามชุดเพื่อบัดกรีไปยัง MyoWare

2. เมื่อเซ็นเซอร์ MyoWare อยู่ในตำแหน่งโดยให้ bicep หงายขึ้น ให้สอดปลายที่สั้นกว่าของส่วนหัวทั้งสามจากด้านล่างเข้าไปในรูที่มีเครื่องหมาย "+" (เครื่องหมายบวก", "-" (เครื่องหมายลบ) และ "SIG" ข้างๆกัน (ดูรูปด้านบน)

3. ประสานส่วนหัวเข้าที่

ขั้นตอนที่ 3: เชื่อมต่อเซ็นเซอร์ MyoWare กับ MaKey MaKey

1. เลือกสายไฟสามเส้น (ควรมีสีต่างกัน) ตัวผู้อยู่ด้านหนึ่ง ตัวเมียอยู่อีกด้านหนึ่ง ความยาวของสายไฟที่คุณต้องการขึ้นอยู่กับว่าคุณต้องการให้ MyoWare อยู่ไกลจาก MaKey MaKey แค่ไหน หากต้องการให้ MyoWare อยู่บนใบหน้าและ MaKey MaKey วางอยู่บนโต๊ะ คุณจะต้องใช้ขนาดประมาณ 18 นิ้ว

2. ตัดสินใจว่าลวดแต่ละสีจะทำหน้าที่ใด อันหนึ่งจะใช้สำหรับจ่ายไฟ (เสียบเข้ากับคอนเน็กเตอร์ + บนเซ็นเซอร์ MyoWare) อันหนึ่งใช้สำหรับกราวด์ (เสียบเข้ากับคอนเน็กเตอร์ - บนเซ็นเซอร์ MyoWare) และอันที่สามจะใช้เป็นสายสัญญาณ (เสียบเข้ากับ ตัวเชื่อมต่อ SIG บน MyoWare) ในภาพที่แสดงในคำแนะนำนี้ เราใช้สีเขียวแทนพลังงาน สีน้ำตาลแทนพื้น และสีเทาสำหรับสัญญาณ

ขั้นตอนที่ 4: อัปโหลด Sketch ไปยัง MaKey MaKey

อัปโหลด Sketch ไปยัง MaKey MaKey
อัปโหลด Sketch ไปยัง MaKey MaKey
อัปโหลด Sketch ไปยัง MaKey MaKey
อัปโหลด Sketch ไปยัง MaKey MaKey
อัปโหลด Sketch ไปยัง MaKey MaKey
อัปโหลด Sketch ไปยัง MaKey MaKey

1. ติดตั้ง Arduino IDE บนคอมพิวเตอร์ของคุณ (บทช่วยสอนที่นี่)

2. ติดตั้งส่วนเสริม MaKey MaKey สำหรับ Arduino (บทช่วยสอนที่นี่) โดยเปิดการตั้งค่า Arduino ของคุณ (ไฟล์ > การตั้งค่า) ไปที่กล่องข้อความ URL ตัวจัดการบอร์ดเพิ่มเติม และวางใน:

raw.githubusercontent.com/sparkfun/Arduino_Boards/master/IDE_Board_Manager/package_sparkfun_index.json

3. ใน Arduino IDE คลิกไฟล์ ดึงลงมาเพื่อสร้างภาพร่างใหม่ คัดลอกและวางรหัสนี้ลงในหน้าต่างข้อความ:

/* เกณฑ์สำหรับการลงทะเบียนการกดปุ่ม*/const int thresh1 = 1000;/*การกำหนดอินพุตบน MaKey MaKey*/const int sensor1Pin = A3;#include "Keyboard.h"int LED (9);การตั้งค่าเป็นโมฆะ (){ pinMode(LED, OUTPUT);Serial.begin(9600);}/*โค้ดด้านล่างสุ่มตัวอย่าง MyoWare ทุกๆ 50 มิลลิวินาที ส่งค่าไปยังพอร์ตอนุกรม และหากค่าสูงกว่าเกณฑ์ ให้ส่งการกดแป้น คุณสามารถสุ่มตัวอย่างได้บ่อยขึ้นโดยลดความล่าช้า ซึ่งจะทำให้อ่านค่าได้ยากขึ้นในหน้าต่างอนุกรม*/void loop(){ int sensor1Val = analogRead(sensor1Pin);Serial.println(sensor1Val);if(sensor1Val >= thresh1){Keyboard.begin();/ / ส่งการกดแป้นของตัวอักษร "c"Keyboard.write('c');//รอ 50 ms ก่อนการสุ่มตัวอย่างอีกครั้งล่าช้า (50);}else//รอ 50 ms ก่อนสุ่มตัวอย่างอีกครั้งdelay(50);}

4. เชื่อมต่อ MaKey MaKey กับคอมพิวเตอร์ของคุณ ดึงเมนูเครื่องมือและตรวจสอบว่าบอร์ดที่เลือกคือ Arduino Leonardo หรือ MaKey MaKey ดึงเมนูเครื่องมือไปที่ Port และตรวจสอบให้แน่ใจว่าพอร์ตที่เลือกนั้นมีชื่อของบอร์ดที่คุณเลือก อัปโหลดภาพสเก็ตช์ของคุณไปยังบอร์ดโดยคลิกลูกศรชี้ไปทางขวาที่ด้านบนของ Arduino IDE

ขั้นตอนที่ 5: เชื่อมต่อส่วนประกอบทั้งหมดของคุณเข้าด้วยกัน

1. เชื่อมต่อสายไฟจากเซ็นเซอร์ MyoWare กับ MaKey MaKey ดังนี้:

  • เครื่องหมาย "+" บน MyoWare จะไปที่ช่อง 5V บน MaKey MaKey
  • เครื่องหมาย "-" บน MyoWare จะลงสู่พื้น ("earth") บน MaKey MaKey
  • "SIG" บน MyoWare จะไปที่ช่อง A3 บน MaKey MaKey

2. ยึดอิเล็กโทรดสามตัวเข้ากับ MyoWare

3. เสียบปลั๊ก MaKey MaKey หากใช้คอมพิวเตอร์ที่เชื่อมต่อกับเต้ารับไฟฟ้า ให้เสียบ MaKey MaKey เข้ากับตัวแยกไฟแบบ USB แล้วเสียบเข้ากับพอร์ต USB ของคอมพิวเตอร์ (นี่เป็นข้อควรระวังด้านความปลอดภัย ดังนั้นหากมีสิ่งผิดปกติเกิดขึ้นกับแหล่งจ่ายไฟในคอมพิวเตอร์ของคุณ ผู้สวมใส่ไม่ได้เชื่อมต่อโดยตรงกับโครงข่ายไฟฟ้า ไม่น่าจะเกิดปัญหาดังกล่าวขึ้น แต่เราอยากให้คุณปลอดภัย) หากใช้แล็ปท็อปที่แบตเตอรี่หมด (เช่น ไม่ได้เสียบเข้ากับผนัง) คุณจะปลอดภัยหากไม่มีไอโซเลเตอร์

4. ตรวจสอบเพื่อดูว่าทุกอย่างเปิดขึ้น ไฟ LED สีแดงของ MaKey MaKey และ LED สีเขียวของ MyoWare ควรติดสว่างทั้งคู่

5. ทำความสะอาดผิวบริเวณที่คุณต้องการติด MyoWare ด้วยแอลกอฮอล์ถูเพื่อขจัดสิ่งสกปรกและน้ำมัน

6. ลอกแผ่นกาวสำรองบนอิเล็กโทรดออก แล้วติด MyoWare กับผิวหนัง คุณต้องการให้อิเล็กโทรดสองตัวที่อยู่บน MyoWare อยู่บนกล้ามเนื้อที่คุณต้องการบันทึก อิเล็กโทรดที่ติดอยู่กับเส้นลวดทำหน้าที่เป็นตัวเปรียบเทียบ และควรวางออกจากกล้ามเนื้อในบริเวณที่จะไม่ทำงานเมื่อกล้ามเนื้อเป้าหมายหดตัว

7. ตรวจสอบกาวบนอิเล็กโทรดเพื่อให้แน่ใจว่าคุณมีตราประทับที่ดีกับผิวหนัง คุณอาจต้องกดขอบของวงแหวนกาวเข้าไปในผิวหนังเพื่อให้ได้ซีลที่ดี

ขั้นตอนที่ 6: การตั้งค่าเกณฑ์ใน Arduino IDE

การตั้งค่าเกณฑ์ใน Arduino IDE
การตั้งค่าเกณฑ์ใน Arduino IDE

1. เมื่อทุกอย่างเชื่อมต่อและเปิดเครื่องแล้ว ให้เปิดจอภาพอนุกรมใน Arduino IDE โดยคลิกที่เครื่องมือแว่นขยายที่มุมบนขวา

2. จอภาพแบบอนุกรมควรแสดงค่าสัญญาณจาก MyoWare ขณะที่คุณงอและผ่อนคลายกล้ามเนื้อ คุณจะเห็นค่าต่างๆ เปลี่ยนไปตามนั้น คุณควรเห็น LED สีแดงบน MyoWare สว่างขึ้นเมื่อคุณเกร็งกล้ามเนื้อมากพอ

3. ขณะดูจอภาพต่อเนื่อง ให้เกร็งกล้ามเนื้อด้วยระดับความเข้มข้นต่างๆ กัน โดยให้แน่ใจว่าได้ผ่อนคลายระหว่างการหดตัวเพื่อกลับสู่การตรวจวัดพื้นฐาน กำหนดค่าเกณฑ์ด้านบนที่คุณต้องการให้การหดตัวเพื่อสร้างการกดปุ่ม ค่าที่สูงขึ้นจะต้องมีการหดตัวที่แข็งแกร่งขึ้นเพื่อลงทะเบียนการกดปุ่ม ค่าที่ต่ำกว่าจะทำให้ไวต่อการหดตัวเล็กน้อย แต่ยังมีแนวโน้มที่จะเกิดสัญญาณเตือนที่ผิดพลาดอีกด้วย

4. ในแบบร่าง Arduino ให้เปลี่ยนค่าขีดจำกัด (const int thresh1) จาก 1,000 เป็นค่าขีดจำกัดที่คุณเลือก

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

ขั้นตอนที่ 7: สนุกกับการใช้ระบบ EMG แบบโฮมเมดใหม่ของคุณ

สนุกกับการใช้ระบบ EMG แบบโฮมเมดใหม่ของคุณ!
สนุกกับการใช้ระบบ EMG แบบโฮมเมดใหม่ของคุณ!

คุณสามารถวางอิเล็กโทรดในตำแหน่งต่างๆ ของร่างกายได้ (เช่น บนใบหน้า ตามที่ Kyle Lee ไซบอร์กในห้องปฏิบัติการของเราแสดงไว้ด้านบน)

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

นอกจากนี้ อ่านต่อเพื่อเรียนรู้วิธีเพิ่มเซ็นเซอร์ MyoWare อื่นในระบบนี้

ขั้นตอนที่ 8: เพิ่มเซ็นเซอร์ตัวที่สองให้กับระบบ EMG ของคุณ

เพิ่มเซ็นเซอร์ตัวที่สองให้กับระบบ EMG ของคุณ
เพิ่มเซ็นเซอร์ตัวที่สองให้กับระบบ EMG ของคุณ

1. ทำซ้ำขั้นตอนที่ 2 สำหรับเซ็นเซอร์ MyoWare ตัวที่สอง

2. ในการติดตั้งเซ็นเซอร์หลายตัวเข้ากับ MaKey MaKey คุณจะต้องมีวิธีในการรับพลังงานจากแต่ละตัว เราทำการปอกสายไฟ บัดกรี และพันเทปเล็กน้อยเพื่อสร้างขั้วต่อรูปตัว Y (ดูภาพด้านบน) โดยแยกเอาต์พุตเดี่ยวจากแหล่งจ่ายไฟของ MaKey MaKey เป็นสองสายที่เชื่อมต่อกับอินพุตไฟ "+" ในแต่ละเส้น ของสอง MyoWares

3. เชื่อมต่อช่อง "SIG" บนเซ็นเซอร์ MyoWare กับช่อง A ต่างๆ ทางด้านขวาของ MaKey MaKey (รหัสที่เราให้ไว้ด้านล่างถือว่าคุณใช้ A3 และ A4)

4. อัปโหลดภาพร่างสำหรับเซ็นเซอร์สองตัว:

/* แบบร่างนี้อ่านสัญญาณเซ็นเซอร์ MyoWare สองตัว และส่งการกดปุ่ม 'b' เมื่ออันหนึ่งอยู่เหนือขีดจำกัด และ 'c' เมื่ออีกอันอยู่เหนือขีดจำกัด*//* ตั้งค่าขีดจำกัด*/const int thresh1 = 1000;const int thresh2 = 1000;/*การกำหนดอินพุตบน MaKey MaKey*/const int sensor1Pin = A3;const int sensor2Pin= A4;#include "Keyboard.h"int LED (9);การตั้งค่าเป็นโมฆะ(){pinMode(LED, OUTPUT);Serial.begin(9600);}void loop(){ int sensor1Val = analogRead(sensor1Pin);int sensor2Val = analogRead(sensor2Pin);Serial.print(sensor1Val);Serial.print(", ");Serial.println(sensor2Val);if(sensor1Val >= thresh1){Keyboard.begin();// ส่งปุ่มกด cKeyboard.write('c');delay(50);}if(sensor2Val >= thresh2){Keyboard.begin();// ส่งการกดปุ่ม bKeyboard.write('b');delay(50);}else//รอ 50 ms ก่อนสุ่มตัวอย่างอีกครั้งdelay(50);}

5. ตอนนี้การอ่านกล้ามเนื้อทั้งสองควรมองเห็นได้ในจอภาพแบบอนุกรม ตั้งค่าแต่ละเกณฑ์แยกกันในร่าง Arduino เช่นเดียวกับในขั้นตอนที่ 6 แล้วโหลดภาพร่างใหม่

ตอนนี้ระบบ EMG ของคุณจะมีอินพุตแยกกันสองช่อง

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

แนะนำ: