Introduction: Controllable Robotic Hand With Flex Sensors & Servos
This Instructable will show you how to make a controllable robotic hand that is controlled using Arduino microcontroller and servo motors. The robotic hand will be directly moved using a hand glove.
Before we begin I'd like to give credit to both ProfHankD (Hand model, rubber & fishing line connections)& dschurman (Code) since this instructable wouldn't have been possible without their amazing work.
This project was made in Fab Lab Dhahran. http://www.fablabdhahran.org/
This work will be explained in both Arabic & English languages.
هذا المشروع هو عبارة عن ذراع آلية مطبوعة بالطابعات الثلاثية الأبعاد يتم توصيلها بمجموعة من المحركات البسيطة و الحساسات و من ثم برمجتها و التحكم في حركاتها المختلفة عن طريق قفاز لليد.
تم عمل هذا المشروع في فاب لاب الظهران http://www.fablabdhahran.org/
Step 1: Requirements
Here's the list of items you will need to make this project:
- 3D Printed Hand
- 3D Hand Holding Base + Pole
- Arduino UNO
- 5x Rubber Bands
- Work Glove
- ~150 cm long fishing line.
- Scissors & Tweezers
- Electrical Wires
- 10x30 Breadboard
- 5x Tower pro microservo 9G
- 5x Flex Sensors
- 3x M4 bolts of length 40mm
- Sewing Needle & Thread
- 5x 22k Resistors
- Soldering Iron & Pen
- Cutting Saw
- 3D Printer
المتطلبات:
- يد مطبوعة بالطابعات الثلاثية
- قاعدة لتثبيت اليد
- أردوينو اونو
- 5 حلقات مطاطية
- 150 سم من خيط صيد (30 سم لكل إصبع)
- مقص و أداة دقيقة لتمرير خيط الصيد
- أسلاك توصيل كهربائية
- لوح توصيل 10x30
- 5 محركات tower pro microservo 9G
- 5 حساسات إنثناء Flex Sensor
- 3 مسامير M4 طولها 40مم
- إبرة خياطة مع خيط الخياطة
- 5 مقاومات بقوة 22k ohms
- قلم لحام
- منشار
Step 2: Hand Printing & Rubber Attachment
- Print the hand & base.
- After printing the hand start by cutting the rubber bands to form rubber lines. A single cut anywhere will do.
- From the back side of the hand, pass 1 rubber band for each finger.
- Stretch the bands and form a knot, one in each end of the finger. The fingers should be in open pose.
- قم بطباعة اليد و القاعدة
- نبدأ بقص حلقات المطاط بحيث تكون كخيط مطاطي.
- يتم تمرير الخيط المطاطي من خلف الذراع و عمل حلقة\ربطة في البداية و النهاية.
- تأكد من أن المطاط مشدود بقوة من الجهتين العلوية و السفلية لكل إصبع.
Step 3: Fishing Line
- Cut the long fishing line to 5 smaller lines (~30 cm each)
- From the front side of the hand, pass the fishing lines from the tip of the fingers and through the lower holes to the back of the hand. Tweezers could prove helpful in this task.
- Make a knot for each finger tip to prevent the line from escaping through the hole.
- قم بقطع خيوط صغيرة من خيط الصيد بحيث تكون بطول 30 سم تقريبا.
- مرر خيط الصيد الصغير من خلف الذراع بحيث يصل الخيط الى الجهة الأمامية.
- استخدم الأداة الدقيقة لمساعدتك في ايصال الخيوط الى نهاية الإصبع.
- قم بعمل حلقة من الخيط في المنطقة العلوية لكل إصبع.
Step 4: Test Connections
- Try to pull the fishing lines to test your robotic hand.
- Also ensure that each finger returns back to its default open pose. If not, then you can stretch the rubber bands even more.
- Once you’re happy with the hand, move on to the next step!
- قم بشد الخيوط للتأكد من أن الحلقات لا تتسرب من بين الفتحات.
- تأكد أيضاً من أن كل إصبع يعود الى الوضعية الأصلية بتأثير المطاطات.
- اذا كان المطاط غير مشدود فبإمكانك شده أكثر.
- اذا ارتحت الى حركة اليد يمكنك الإنتقال الى الخطوة التالية
Step 5: Base
- Print the pole. To join the two parts together, cut one M4 bolt’s head and screw half the thread in half of the pole then screw the other half with it.
- Hold the pole in place below the base and fix it using the other 2 M4 bolts as shown in the picture.
- Fix the hand in place and pass the fishing lines to be below the base.
- اطبع عمود التثبيت. لتثبيت القطعتين مع بعضهما البعض نقوم بقطع
- رأس واحد من مسامير ال M4 و ندخل نصفه الى القطعة الأولى من العمود ثم نثبت الثانية فيهما.
- قم بتثبيت الجزء اللوبي في منتصف عمود القاعدة.
- ثبت عمود القاعدة تحت القاعدة بمسماري M4
- ركب الذراع الآلية في الفتحة المخصصة مع مراعاة تمرير خيوط الصيد في فتحاتها.
Step 6: Servo Connections
- Attach the servo motors in place as shown in the picture.
- Make sure the servos wires are opposite to where the hand is positioned.
- The servos must be pointing at the hand and they can move 180 clockwise away from the hand.
- The fishing lines pass around the pole in one of crevices that is closest to the servo. This will ensure smooth movement.
- Make sure the lines are stretched so that any simple movement make the fingers move.
- Attach/knit the fishing lines to the servo white handles.
- قم بتركيب المحرات في الأماكن المخصصة.
- تأكد أن أسلاك المحركات تقابل الجهة المخصصة لذلك.
- تأكد أن كل محرك يأشر على الذراع و أنه قادر على التحرك 180 درجة باتجاه عقارب الساعة الى الطرف المعاكس لموقع الذراع.
- قم بتثبيت خيوط الصيد في فتحات اذرعة المحركات.
- تأكد أن الخيوط في حالة مشدودة و أنها قادرة على تحريك أصابع الذراع الحركة الكاملة.
- تأكد من تمرير الخيوط في المكان المناسب على عمود القاعدة من الأسفل.
Step 7: Glove
- Solder two wires for every flex sensor.
- Sew the flex sensors on the glove making sure the side that has golden strips is facing upwards(written text facing hand)
- When sewing make sure the glove is in open pose.
- Make a tiny small hole at the end of the flex sensors(make sure the golden strips are NOT affected) to prevent the sensor from sliding back and forth between the circular threads.
• قم بتلحيم سلكين لكل حساس إنثناء
• قم بتحديد موقع الحساسات على كل إصبع في القفاز بقلم.
• قم بخياطة الحساسات بحيث تدور الخيوط على الحساسات.
• قم بحفر حفرة صغير في مقدمة الحساست مع مراعاة عدم لمس الجزء الذهبي المعدني لكي لا تأثر على أداء الحساس. الغرض منها هو تثبيت الحساس و منع انزلاقه في المجرى الذي قمنا بخياطته.
• يتم تثبيت الحساس بحيث يكون الجزء العلوي في نهاية الإصبع موازيا لموقع الإظفر.
Step 8: Wiring & Code
- Using the breadboard and wires we start connecting the servos to the Arduino and the flex sensors.
- NOTE: When using the soldering iron be careful since it is extremely hot and can cause severe burns.
- Servos have 3 wires: orange, brown and red which indicate Signal, Ground
- and Vcc respectively. You can solder all browns together and reds together then connect them to GND & Vcc respectively on the Ardiuno board. Or a second approach would be to connect browns to the bread board in one line and then drawing the GND signal from the Arudino. Same thing could be said about the reds.
- Signals’ connection is shown in the code
- Servos are connected to pins 5, 6, 9, 10 & 3
- After making sure all wires are correctly connected we load the Hand Code to the Arduino.
- The only portion where you should make changes is mapping values (ex. 330 & 430). 0 & 180 shouldn’t be changed since they are the limits of servo movement. 0 being the minimum and 180 being the maximum.
- To get the readings from the flex sensor and determine the min and max values. Go to the bottom of the code page and type which sensor you wish to get the readings from (flex 2, flex 3…etc). Then upload the code and open the Serial Monitor window. Now start moving the finger and write down the maximum and minimum values you can see.
- Now that you’re satisfied with the new values, save the updated code and load it to your Arduino.
- Congratulations! You have made your own controllable Robotic Hand!
• يتم تلحيم الحساست مع الأسلاك باستخدام قلم اللحام و حديد اللحام. ملاحظة: قلم اللحام ذو حرارة عالية و يجب الحذر حين استخدامه.
• المحركات يتم تثبيتها في مداخل الأردوينو 5, 6, 9, 10 و 13
• الجزئية التي تتطلب التغيير موضحة بالمربعات الحمراء. في الصورة الأولى ترمز المربعات الى القيم العظمى و الصغرى للحساسات و التي يمكننا عرضها من خلال تغيير الرقم الموجود في المربع الأحمر في الصورة الثانية و التحميل البرنامج ثم الضغط على “Serial Monitor”
• قم بتحريك الأصابع و اختبار القيم العظمى و الصغرى الى أن تناسبك.
• مبروك! لقد قمت بتصميم ذراعك الآلية الخاصة!