gramaziokohler / integral_timber_joints

Robotic Assembled Timber Structures with Integral Timber Joints
MIT License
9 stars 0 forks source link

Symbolic planning (w/o any geometric constraint for now) #66

Closed yijiangh closed 3 years ago

yijiangh commented 3 years ago

Nine pieces symbolic plan found:

1) move Conf-Home @conf11005 @traj16550
 2) pick_gripper_from_rack g1 @conf11005 @conf21005 @traj13683
 3) move @conf21005 @conf1979 @traj16614
 4) pick_element_from_rack b0 @conf1979 @conf2979 @traj13657 g1
 5) move @conf2979 @conf1980 @traj13700
 6) place_element_on_structure b0 @conf1980 @conf2980 @traj13658 g1
 7) move @conf2980 @conf1981 @traj13719
 8) pick_element_from_rack b1 @conf1981 @conf2981 @traj13659 g1
 9) move @conf2981 @conf1982 @traj13747
10) place_element_on_structure b1 @conf1982 @conf2982 @traj13660 g1
11) move @conf2982 @conf11006 @traj16822
12) place_tool_at_rack g1 @conf11006 @conf21006 @traj13684
13) move @conf21006 @conf1997 @traj16833
14) pick_clamp_from_rack c1 @conf1997 @conf2997 @traj13675
15) move @conf2997 @conf1998 @traj15272
16) place_clamp_at_joint c1 b0 b2 @conf1998 @conf2998 @traj13676
17) move @conf2998 @conf11003 @traj16155
18) pick_clamp_from_rack c4 @conf11003 @conf21003 @traj13681
19) move @conf21003 @conf11004 @traj16384
20) place_clamp_at_joint c4 b1 b2 @conf11004 @conf21004 @traj13682
21) move @conf21004 @conf11005 @traj16572
22) pick_gripper_from_rack g1 @conf11005 @conf21005 @traj13683
23) move @conf21005 @conf1983 @traj16624
24) pick_element_from_rack b2 @conf1983 @conf2983 @traj13661 g1
25) move @conf2983 @conf1984 @traj13821
26) place_element_on_structure b2 @conf1984 @conf2984 @traj13662 g1
27) move @conf2984 @conf11006 @traj16785
28) place_tool_at_rack g1 @conf11006 @conf21006 @traj13684
29) move @conf21006 @conf11003 @traj16851
30) pick_clamp_from_joint c4 b1 b2 @conf11003 @conf21003 @traj13681
31) move @conf21003 @conf11004 @traj16384
32) place_clamp_at_joint c4 b1 b3 @conf11004 @conf21004 @traj13682
33) move @conf21004 @conf1997 @traj16401
34) pick_clamp_from_joint c1 b0 b2 @conf1997 @conf2997 @traj13675
35) move @conf2997 @conf1998 @traj15272
36) place_clamp_at_joint c1 b0 b3 @conf1998 @conf2998 @traj13676
37) move @conf2998 @conf11005 @traj16568
38) pick_gripper_from_rack g1 @conf11005 @conf21005 @traj13683
39) move @conf21005 @conf1985 @traj16639
40) pick_element_from_rack b3 @conf1985 @conf2985 @traj13663 g1
41) move @conf2985 @conf1986 @traj13939
42) place_element_on_structure b3 @conf1986 @conf2986 @traj13664 g1
43) move @conf2986 @conf1987 @traj14003
44) pick_element_from_rack b5 @conf1987 @conf2987 @traj13665 g1
45) move @conf2987 @conf1988 @traj14086
46) place_element_on_structure b5 @conf1988 @conf2988 @traj13666 g1
47) move @conf2988 @conf11006 @traj16801
48) place_tool_at_rack g1 @conf11006 @conf21006 @traj13684
49) move @conf21006 @conf11003 @traj16851
50) pick_clamp_from_joint c4 b1 b3 @conf11003 @conf21003 @traj13681
51) move @conf21003 @conf11004 @traj16384
52) place_clamp_at_joint c4 b5 b6 @conf11004 @conf21004 @traj13682
53) move @conf21004 @conf1997 @traj16401
54) pick_clamp_from_joint c1 b0 b3 @conf1997 @conf2997 @traj13675
55) move @conf2997 @conf1998 @traj15272
56) place_clamp_at_joint c1 b0 b6 @conf1998 @conf2998 @traj13676
57) move @conf2998 @conf11005 @traj16568
58) pick_gripper_from_rack g1 @conf11005 @conf21005 @traj13683
59) move @conf21005 @conf1989 @traj16654
60) pick_element_from_rack b6 @conf1989 @conf2989 @traj13667 g1
61) move @conf2989 @conf1990 @traj14254
62) place_element_on_structure b6 @conf1990 @conf2990 @traj13668 g1
63) move @conf2990 @conf1991 @traj14357
64) pick_element_from_rack b7 @conf1991 @conf2991 @traj13669 g1
65) move @conf2991 @conf1992 @traj14462
66) place_element_on_structure b7 @conf1992 @conf2992 @traj13670 g1
67) move @conf2992 @conf11006 @traj16793
68) place_tool_at_rack g1 @conf11006 @conf21006 @traj13684
69) move @conf21006 @conf1997 @traj16833
70) pick_clamp_from_joint c1 b0 b6 @conf1997 @conf2997 @traj13675
71) move @conf2997 @conf1998 @traj15272
72) place_clamp_at_joint c1 b1 b8 @conf1998 @conf2998 @traj13676
73) move @conf2998 @conf11003 @traj16155
74) pick_clamp_from_joint c4 b5 b6 @conf11003 @conf21003 @traj13681
75) move @conf21003 @conf11004 @traj16384
76) place_clamp_at_joint c4 b7 b8 @conf11004 @conf21004 @traj13682
77) move @conf21004 @conf11005 @traj16572
78) pick_gripper_from_rack g1 @conf11005 @conf21005 @traj13683
79) move @conf21005 @conf1993 @traj16643
80) pick_element_from_rack b8 @conf1993 @conf2993 @traj13671 g1
81) move @conf2993 @conf1994 @traj14700
82) place_element_on_structure b8 @conf1994 @conf2994 @traj13672 g1
83) move @conf2994 @conf11006 @traj16771
84) place_tool_at_rack g1 @conf11006 @conf21006 @traj13684
85) move @conf21006 @conf1997 @traj16833
86) pick_clamp_from_joint c1 b1 b8 @conf1997 @conf2997 @traj13675
87) move @conf2997 @conf1998 @traj15272
88) place_clamp_at_joint c1 b5 b4 @conf1998 @conf2998 @traj13676
89) move @conf2998 @conf11003 @traj16155
90) pick_clamp_from_joint c4 b7 b8 @conf11003 @conf21003 @traj13681
91) move @conf21003 @conf11004 @traj16384
92) place_clamp_at_joint c4 b7 b4 @conf11004 @conf21004 @traj13682
93) move @conf21004 @conf11005 @traj16572
94) pick_gripper_from_rack g1 @conf11005 @conf21005 @traj13683
95) move @conf21005 @conf1995 @traj16649
96) pick_element_from_rack b4 @conf1995 @conf2995 @traj13673 g1
97) move @conf2995 @conf1996 @traj14954
98) place_element_on_structure b4 @conf1996 @conf2996 @traj13674 g1
99) move @conf2996 @conf11006 @traj16794
100) place_tool_at_rack g1 @conf11006 @conf21006 @traj13684
101) move @conf21006 @conf1997 @traj16833
102) pick_clamp_from_joint c1 b5 b4 @conf1997 @conf2997 @traj13675
103) move @conf2997 @conf1998 @traj15272
104) place_tool_at_rack c1 @conf1998 @conf2998 @traj13676
105) move @conf2998 @conf11003 @traj16155
106) pick_clamp_from_joint c4 b7 b4 @conf11003 @conf21003 @traj13681
107) move @conf21003 @conf11004 @traj16384
108) place_tool_at_rack c4 @conf11004 @conf21004 @traj13682
109) move @conf21004 Conf-Home @traj1639
yijiangh commented 3 years ago

I will have to visualize the plan to make sure it is right. I did a pen-and-paper + eyeballing check and it LGTM.

After that I will add in the screw drivers and verify on cantibox or hypar hut.

yijiangh commented 3 years ago

Symbolic planning fully working for nine pieces without screwdrivers. I will go for including the geometric constraints first before introducing the screwdrivers.

The gripper types and clamp types for beams and joints are correctly enforced now. The plan shown above actually has incorrect gripper and clamp types assigned.