Physically Motivated Safety Guarantees for Machine Knitting
Jenny Lin jennylin@cs.cmu.edu
- 1
Physically Motivated Safety Guarantees for Machine Knitting Jenny - - PowerPoint PPT Presentation
Physically Motivated Safety Guarantees for Machine Knitting Jenny Lin jennylin@cs.cmu.edu 1 Machine Knitting 2 Machine Knitting 3 Machine Knitting Narayan, V., et al. ACM Trans. Graph. (2018). 4 A Circle 5 A Circle
Jenny Lin jennylin@cs.cmu.edu
2
3
Narayan, V., et al. ACM Trans. Graph. (2018). 4
5
6
7
Top Down Isometric
8
Top Down Isometric
9
Top Down Isometric
10
Front Bed Back Bed
11
Front Bed Back Bed
12
Front Bed Back Bed
13
Front Bed Back Bed
14
Front Bed Back Bed
15
Front Bed Back Bed
16
Front Bed Back Bed
17
Front Bed Back Bed
18
Front Bed Back Bed
19
Front Bed Back Bed
20
Front Bed Back Bed
21
Front Bed Back Bed
22
Front Bed Back Bed
23
Front Bed Back Bed
24
Front Bed Back Bed
25
Front Bed Back Bed
26
Front Bed Back Bed
27
Front Bed Back Bed
28
Front Bed Back Bed
29
30
31
Distance
32
Distance Distance
33
Distance Distance Distance Max Distance
34
Distance Distance Distance Max Distance
Safety: Distance <= Max Distance
35
Function: Change stitch distances
36
Function: Change stitch distances
37
Function: Change stitch distances
rack +1
38
Function: Change stitch distances
rack +1
39
Function: Change stitch distances
rack +1
1 1 1 1 2
40
Function: Change stitch distances
rack +1
1 1 1 1 2 rack := *; for each stitch: Transfer: crossing := *; ?(crossing = 0 V crossing = 1 V crossing = -1); Rack: distance := distance + crossing*rack;
41
to define the safe range
42
to define the safe range
for each stitch: Transfer: crossing := *; ?(crossing = 0 V crossing = 1 V crossing = -1); minRack := min(|crossing|*stitchMin, minRack); maxRack := min(|crossing|*stitchMax, maxRack); rack := *; ?(rack <= maxRack); ?(rack >= minRack); for each stitch: Rack: distance := distance + crossing*rack;
43
to define the safe range
for each stitch: Transfer: crossing := *; ?(crossing = 0 V crossing = 1 V crossing = -1); minRack := min(|crossing|*stitchMin, minRack); maxRack := min(|crossing|*stitchMax, maxRack); rack := *; ?(rack <= maxRack); ?(rack >= minRack); for each stitch: Rack: distance := distance + crossing*rack;
Key Assumption: Stitches are safe at zero racking
44
45
tension
tension
46
tension
tension
47
tension
tension
Safety condition: Distance <= Max Distance
set by machine continuous evolution over time
48
continuous dynamics
measurements
49
continuous dynamics
measurements
50