In [1]:
from __future__ import division
from numpy import *
%pylab inline
import as mcm
Populating the interactive namespace from numpy and matplotlib


Sam Calisch

Sewing is a big topic. In the recitation, we covered a wide range of topics. I'll list them to use as search terms for additional resources:

  • Sheet materials: Ripstop nylon, Cordura, Sunbrella, ShelterRite, Neoprene, Leather, Mylar/Duralar, Tyvek, Vulcanized Fiber
  • Thermal welding, Ultrasonic welding, RF Welding,
  • Pressure, Axial stress, Hoop stress
  • Cutting trees and unfoldings
  • Chain stitch versus lock stitch
  • Presser foot versus walking foot
  • Overlocker, Surger
  • Rotary versus oscillating bobbin hook
  • Embroidery versus sewing
  • Airtight inflatables versus rammed air inflatables

By ru:user:NikolayS - ru:Файл:Lockstitch.gif, CC BY-SA 3.0, Link

instron testing seam strength

Sewing provides a way to join panels that can be structurally superior to glues and welding processes for woven materials. Here we test the strength of a 1" seam for several glues, two seam types, and an uncut panel. We can see a proper seam can perform at levels comparable to an uncut panel.


Many questions from the recitation were about the ever popular topic of making inflatable things. A few years ago we tried to condense some knowledge into an instructable on this topic, where we make a high strength inflatable of the instructables robot. Link below.

Inflatables Instructable

Using these techniques, it's possible to differentially pressurize inflatables to do useful work. Below are links to two early robot arm prototypes from Otherlab:

Robot arm 1

Robot arm 2

DIY Sewing Machine

I'm working on a small sewing machine for CNC applications. The timing is done electronically, removing the need for a lot of the mechanisms inside a sewing machine. This will likely result in a slower machine, but the advantage is increased customizability and control.

In [3]:
#instron testing seam strength
fn = lambda i: 'instron/Specimen_RawData_%d.csv'%(i+1)
cm =
def read_data(i,fn):
    f = open(fn(i),'r')
    data = asarray([map(float,l.strip('\n\r').split(',')) for l in f.readlines()])
    #data = data*array([1,-1,-1])
    start = 0
    #start = where(data[...,2]>10.)[0][0]
    #linear = where(data[...,2]>30.)[0][0]
    data = data[start:] - data[start]
    #p = polyfit(data[:linear,1],data[:linear,2],1)
    return data#,p

labels = ['hot melt','rubber cement','uncut','bad seam','good seam'] 
for i,l in enumerate(labels):
    #v,p = read_data(i,fn)
    v = read_data(i,fn)

xlabel('displacement (mm)')
ylabel('force (N)')
legend(loc='lower right',prop={'size':10},labelspacing=0)
title('fabric seam testing')
<matplotlib.text.Text at 0x105a42650>
In [ ]: