建立方向盘项目初始版本

This commit is contained in:
2026-10-29 22:04:55 +08:00
commit 9962cbfbce
834 changed files with 1519203 additions and 0 deletions

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
ok

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,191 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('FreeCAD Model'),'2;1');
FILE_NAME('Open CASCADE Shape Model','2026-10-28T11:29:19',(''),(''),
'Open CASCADE STEP processor 7.8','FreeCAD','Unknown');
FILE_SCHEMA(('AUTOMOTIVE_DESIGN { 1 0 10303 214 1 1 1 1 }'));
ENDSEC;
DATA;
#1 = APPLICATION_PROTOCOL_DEFINITION('international standard',
'automotive_design',2000,#2);
#2 = APPLICATION_CONTEXT(
'core data for automotive mechanical design processes');
#3 = SHAPE_DEFINITION_REPRESENTATION(#4,#10);
#4 = PRODUCT_DEFINITION_SHAPE('','',#5);
#5 = PRODUCT_DEFINITION('design','',#6,#9);
#6 = PRODUCT_DEFINITION_FORMATION('','',#7);
#7 = PRODUCT('0.5mm C shim; rotate to opening',
'0.5mm C shim; rotate to opening','',(#8));
#8 = PRODUCT_CONTEXT('',#2,'mechanical');
#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
#10 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#15),#169);
#11 = AXIS2_PLACEMENT_3D('',#12,#13,#14);
#12 = CARTESIAN_POINT('',(0.,0.,0.));
#13 = DIRECTION('',(0.,0.,1.));
#14 = DIRECTION('',(1.,0.,-0.));
#15 = MANIFOLD_SOLID_BREP('',#16);
#16 = CLOSED_SHELL('',(#17,#59,#91,#115,#140,#157));
#17 = ADVANCED_FACE('',(#18),#54,.T.);
#18 = FACE_BOUND('',#19,.T.);
#19 = EDGE_LOOP('',(#20,#31,#39,#48));
#20 = ORIENTED_EDGE('',*,*,#21,.F.);
#21 = EDGE_CURVE('',#22,#24,#26,.T.);
#22 = VERTEX_POINT('',#23);
#23 = CARTESIAN_POINT('',(12.296100594191,15.543277195068,0.5));
#24 = VERTEX_POINT('',#25);
#25 = CARTESIAN_POINT('',(15.543277195068,7.703899405809,0.5));
#26 = CIRCLE('',#27,6.);
#27 = AXIS2_PLACEMENT_3D('',#28,#29,#30);
#28 = CARTESIAN_POINT('',(10.,10.,0.5));
#29 = DIRECTION('',(0.,0.,1.));
#30 = DIRECTION('',(1.,0.,-0.));
#31 = ORIENTED_EDGE('',*,*,#32,.F.);
#32 = EDGE_CURVE('',#33,#22,#35,.T.);
#33 = VERTEX_POINT('',#34);
#34 = CARTESIAN_POINT('',(12.296100594191,15.543277195068,0.));
#35 = LINE('',#36,#37);
#36 = CARTESIAN_POINT('',(12.296100594191,15.543277195068,0.));
#37 = VECTOR('',#38,1.);
#38 = DIRECTION('',(0.,0.,1.));
#39 = ORIENTED_EDGE('',*,*,#40,.T.);
#40 = EDGE_CURVE('',#33,#41,#43,.T.);
#41 = VERTEX_POINT('',#42);
#42 = CARTESIAN_POINT('',(15.543277195068,7.703899405809,0.));
#43 = CIRCLE('',#44,6.);
#44 = AXIS2_PLACEMENT_3D('',#45,#46,#47);
#45 = CARTESIAN_POINT('',(10.,10.,0.));
#46 = DIRECTION('',(0.,0.,1.));
#47 = DIRECTION('',(1.,0.,-0.));
#48 = ORIENTED_EDGE('',*,*,#49,.T.);
#49 = EDGE_CURVE('',#41,#24,#50,.T.);
#50 = LINE('',#51,#52);
#51 = CARTESIAN_POINT('',(15.543277195068,7.703899405809,0.));
#52 = VECTOR('',#53,1.);
#53 = DIRECTION('',(0.,0.,1.));
#54 = CYLINDRICAL_SURFACE('',#55,6.);
#55 = AXIS2_PLACEMENT_3D('',#56,#57,#58);
#56 = CARTESIAN_POINT('',(10.,10.,0.));
#57 = DIRECTION('',(0.,0.,1.));
#58 = DIRECTION('',(1.,0.,-0.));
#59 = ADVANCED_FACE('',(#60),#86,.T.);
#60 = FACE_BOUND('',#61,.T.);
#61 = EDGE_LOOP('',(#62,#70,#71,#79));
#62 = ORIENTED_EDGE('',*,*,#63,.T.);
#63 = EDGE_CURVE('',#64,#22,#66,.T.);
#64 = VERTEX_POINT('',#65);
#65 = CARTESIAN_POINT('',(10.841903551203,12.032534971525,0.5));
#66 = LINE('',#67,#68);
#67 = CARTESIAN_POINT('',(13.826834323651,19.238795325113,0.5));
#68 = VECTOR('',#69,1.);
#69 = DIRECTION('',(0.382683432365,0.923879532511,-0.));
#70 = ORIENTED_EDGE('',*,*,#21,.T.);
#71 = ORIENTED_EDGE('',*,*,#72,.T.);
#72 = EDGE_CURVE('',#24,#73,#75,.T.);
#73 = VERTEX_POINT('',#74);
#74 = CARTESIAN_POINT('',(12.032534971525,9.158096448797,0.5));
#75 = LINE('',#76,#77);
#76 = CARTESIAN_POINT('',(10.,10.,0.5));
#77 = VECTOR('',#78,1.);
#78 = DIRECTION('',(-0.923879532511,0.382683432365,0.));
#79 = ORIENTED_EDGE('',*,*,#80,.F.);
#80 = EDGE_CURVE('',#64,#73,#81,.T.);
#81 = CIRCLE('',#82,2.2);
#82 = AXIS2_PLACEMENT_3D('',#83,#84,#85);
#83 = CARTESIAN_POINT('',(10.,10.,0.5));
#84 = DIRECTION('',(0.,0.,1.));
#85 = DIRECTION('',(1.,0.,-0.));
#86 = PLANE('',#87);
#87 = AXIS2_PLACEMENT_3D('',#88,#89,#90);
#88 = CARTESIAN_POINT('',(10.,10.,0.5));
#89 = DIRECTION('',(0.,0.,1.));
#90 = DIRECTION('',(1.,0.,-0.));
#91 = ADVANCED_FACE('',(#92),#110,.T.);
#92 = FACE_BOUND('',#93,.T.);
#93 = EDGE_LOOP('',(#94,#95,#103,#109));
#94 = ORIENTED_EDGE('',*,*,#49,.F.);
#95 = ORIENTED_EDGE('',*,*,#96,.T.);
#96 = EDGE_CURVE('',#41,#97,#99,.T.);
#97 = VERTEX_POINT('',#98);
#98 = CARTESIAN_POINT('',(12.032534971525,9.158096448797,0.));
#99 = LINE('',#100,#101);
#100 = CARTESIAN_POINT('',(10.,10.,0.));
#101 = VECTOR('',#102,1.);
#102 = DIRECTION('',(-0.923879532511,0.382683432365,0.));
#103 = ORIENTED_EDGE('',*,*,#104,.T.);
#104 = EDGE_CURVE('',#97,#73,#105,.T.);
#105 = LINE('',#106,#107);
#106 = CARTESIAN_POINT('',(12.032534971525,9.158096448797,-1.E-02));
#107 = VECTOR('',#108,1.);
#108 = DIRECTION('',(0.,0.,1.));
#109 = ORIENTED_EDGE('',*,*,#72,.F.);
#110 = PLANE('',#111);
#111 = AXIS2_PLACEMENT_3D('',#112,#113,#114);
#112 = CARTESIAN_POINT('',(10.,10.,-1.E-02));
#113 = DIRECTION('',(0.382683432365,0.923879532511,-0.));
#114 = DIRECTION('',(0.923879532511,-0.382683432365,0.));
#115 = ADVANCED_FACE('',(#116),#135,.F.);
#116 = FACE_BOUND('',#117,.F.);
#117 = EDGE_LOOP('',(#118,#126,#127,#128));
#118 = ORIENTED_EDGE('',*,*,#119,.T.);
#119 = EDGE_CURVE('',#120,#33,#122,.T.);
#120 = VERTEX_POINT('',#121);
#121 = CARTESIAN_POINT('',(10.841903551203,12.032534971525,0.));
#122 = LINE('',#123,#124);
#123 = CARTESIAN_POINT('',(13.826834323651,19.238795325113,0.));
#124 = VECTOR('',#125,1.);
#125 = DIRECTION('',(0.382683432365,0.923879532511,-0.));
#126 = ORIENTED_EDGE('',*,*,#40,.T.);
#127 = ORIENTED_EDGE('',*,*,#96,.T.);
#128 = ORIENTED_EDGE('',*,*,#129,.F.);
#129 = EDGE_CURVE('',#120,#97,#130,.T.);
#130 = CIRCLE('',#131,2.2);
#131 = AXIS2_PLACEMENT_3D('',#132,#133,#134);
#132 = CARTESIAN_POINT('',(10.,10.,0.));
#133 = DIRECTION('',(0.,0.,1.));
#134 = DIRECTION('',(1.,0.,-0.));
#135 = PLANE('',#136);
#136 = AXIS2_PLACEMENT_3D('',#137,#138,#139);
#137 = CARTESIAN_POINT('',(10.,10.,0.));
#138 = DIRECTION('',(0.,0.,1.));
#139 = DIRECTION('',(1.,0.,-0.));
#140 = ADVANCED_FACE('',(#141),#152,.T.);
#141 = FACE_BOUND('',#142,.T.);
#142 = EDGE_LOOP('',(#143,#144,#145,#146));
#143 = ORIENTED_EDGE('',*,*,#119,.T.);
#144 = ORIENTED_EDGE('',*,*,#32,.T.);
#145 = ORIENTED_EDGE('',*,*,#63,.F.);
#146 = ORIENTED_EDGE('',*,*,#147,.F.);
#147 = EDGE_CURVE('',#120,#64,#148,.T.);
#148 = LINE('',#149,#150);
#149 = CARTESIAN_POINT('',(10.841903551203,12.032534971525,-1.E-02));
#150 = VECTOR('',#151,1.);
#151 = DIRECTION('',(0.,0.,1.));
#152 = PLANE('',#153);
#153 = AXIS2_PLACEMENT_3D('',#154,#155,#156);
#154 = CARTESIAN_POINT('',(17.653668647302,28.477590650226,-1.E-02));
#155 = DIRECTION('',(0.923879532511,-0.382683432365,0.));
#156 = DIRECTION('',(-0.382683432365,-0.923879532511,0.));
#157 = ADVANCED_FACE('',(#158),#164,.F.);
#158 = FACE_BOUND('',#159,.F.);
#159 = EDGE_LOOP('',(#160,#161,#162,#163));
#160 = ORIENTED_EDGE('',*,*,#80,.F.);
#161 = ORIENTED_EDGE('',*,*,#147,.F.);
#162 = ORIENTED_EDGE('',*,*,#129,.T.);
#163 = ORIENTED_EDGE('',*,*,#104,.T.);
#164 = CYLINDRICAL_SURFACE('',#165,2.2);
#165 = AXIS2_PLACEMENT_3D('',#166,#167,#168);
#166 = CARTESIAN_POINT('',(10.,10.,-1.E-02));
#167 = DIRECTION('',(0.,0.,1.));
#168 = DIRECTION('',(1.,0.,-0.));
#169 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#173)) GLOBAL_UNIT_ASSIGNED_CONTEXT
((#170,#171,#172)) REPRESENTATION_CONTEXT('Context #1',
'3D Context with UNIT and UNCERTAINTY') );
#170 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
#171 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
#172 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
#173 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(2.E-07),#170,
'distance_accuracy_value','confusion accuracy');
#174 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#7));
ENDSEC;
END-ISO-10303-21;

Binary file not shown.

View File

@@ -0,0 +1,191 @@
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('FreeCAD Model'),'2;1');
FILE_NAME('Open CASCADE Shape Model','2026-10-28T11:29:19',(''),(''),
'Open CASCADE STEP processor 7.8','FreeCAD','Unknown');
FILE_SCHEMA(('AUTOMOTIVE_DESIGN { 1 0 10303 214 1 1 1 1 }'));
ENDSEC;
DATA;
#1 = APPLICATION_PROTOCOL_DEFINITION('international standard',
'automotive_design',2000,#2);
#2 = APPLICATION_CONTEXT(
'core data for automotive mechanical design processes');
#3 = SHAPE_DEFINITION_REPRESENTATION(#4,#10);
#4 = PRODUCT_DEFINITION_SHAPE('','',#5);
#5 = PRODUCT_DEFINITION('design','',#6,#9);
#6 = PRODUCT_DEFINITION_FORMATION('','',#7);
#7 = PRODUCT('1mm C shim; rotate to opening',
'1mm C shim; rotate to opening','',(#8));
#8 = PRODUCT_CONTEXT('',#2,'mechanical');
#9 = PRODUCT_DEFINITION_CONTEXT('part definition',#2,'design');
#10 = ADVANCED_BREP_SHAPE_REPRESENTATION('',(#11,#15),#169);
#11 = AXIS2_PLACEMENT_3D('',#12,#13,#14);
#12 = CARTESIAN_POINT('',(0.,0.,0.));
#13 = DIRECTION('',(0.,0.,1.));
#14 = DIRECTION('',(1.,0.,-0.));
#15 = MANIFOLD_SOLID_BREP('',#16);
#16 = CLOSED_SHELL('',(#17,#59,#91,#115,#140,#157));
#17 = ADVANCED_FACE('',(#18),#54,.T.);
#18 = FACE_BOUND('',#19,.T.);
#19 = EDGE_LOOP('',(#20,#31,#39,#48));
#20 = ORIENTED_EDGE('',*,*,#21,.F.);
#21 = EDGE_CURVE('',#22,#24,#26,.T.);
#22 = VERTEX_POINT('',#23);
#23 = CARTESIAN_POINT('',(12.296100594191,15.543277195068,1.));
#24 = VERTEX_POINT('',#25);
#25 = CARTESIAN_POINT('',(15.543277195068,7.703899405809,1.));
#26 = CIRCLE('',#27,6.);
#27 = AXIS2_PLACEMENT_3D('',#28,#29,#30);
#28 = CARTESIAN_POINT('',(10.,10.,1.));
#29 = DIRECTION('',(0.,0.,1.));
#30 = DIRECTION('',(1.,0.,-0.));
#31 = ORIENTED_EDGE('',*,*,#32,.F.);
#32 = EDGE_CURVE('',#33,#22,#35,.T.);
#33 = VERTEX_POINT('',#34);
#34 = CARTESIAN_POINT('',(12.296100594191,15.543277195068,0.));
#35 = LINE('',#36,#37);
#36 = CARTESIAN_POINT('',(12.296100594191,15.543277195068,0.));
#37 = VECTOR('',#38,1.);
#38 = DIRECTION('',(0.,0.,1.));
#39 = ORIENTED_EDGE('',*,*,#40,.T.);
#40 = EDGE_CURVE('',#33,#41,#43,.T.);
#41 = VERTEX_POINT('',#42);
#42 = CARTESIAN_POINT('',(15.543277195068,7.703899405809,0.));
#43 = CIRCLE('',#44,6.);
#44 = AXIS2_PLACEMENT_3D('',#45,#46,#47);
#45 = CARTESIAN_POINT('',(10.,10.,0.));
#46 = DIRECTION('',(0.,0.,1.));
#47 = DIRECTION('',(1.,0.,-0.));
#48 = ORIENTED_EDGE('',*,*,#49,.T.);
#49 = EDGE_CURVE('',#41,#24,#50,.T.);
#50 = LINE('',#51,#52);
#51 = CARTESIAN_POINT('',(15.543277195068,7.703899405809,0.));
#52 = VECTOR('',#53,1.);
#53 = DIRECTION('',(0.,0.,1.));
#54 = CYLINDRICAL_SURFACE('',#55,6.);
#55 = AXIS2_PLACEMENT_3D('',#56,#57,#58);
#56 = CARTESIAN_POINT('',(10.,10.,0.));
#57 = DIRECTION('',(0.,0.,1.));
#58 = DIRECTION('',(1.,0.,-0.));
#59 = ADVANCED_FACE('',(#60),#86,.T.);
#60 = FACE_BOUND('',#61,.T.);
#61 = EDGE_LOOP('',(#62,#70,#71,#79));
#62 = ORIENTED_EDGE('',*,*,#63,.T.);
#63 = EDGE_CURVE('',#64,#22,#66,.T.);
#64 = VERTEX_POINT('',#65);
#65 = CARTESIAN_POINT('',(10.841903551203,12.032534971525,1.));
#66 = LINE('',#67,#68);
#67 = CARTESIAN_POINT('',(13.826834323651,19.238795325113,1.));
#68 = VECTOR('',#69,1.);
#69 = DIRECTION('',(0.382683432365,0.923879532511,-0.));
#70 = ORIENTED_EDGE('',*,*,#21,.T.);
#71 = ORIENTED_EDGE('',*,*,#72,.T.);
#72 = EDGE_CURVE('',#24,#73,#75,.T.);
#73 = VERTEX_POINT('',#74);
#74 = CARTESIAN_POINT('',(12.032534971525,9.158096448797,1.));
#75 = LINE('',#76,#77);
#76 = CARTESIAN_POINT('',(10.,10.,1.));
#77 = VECTOR('',#78,1.);
#78 = DIRECTION('',(-0.923879532511,0.382683432365,0.));
#79 = ORIENTED_EDGE('',*,*,#80,.F.);
#80 = EDGE_CURVE('',#64,#73,#81,.T.);
#81 = CIRCLE('',#82,2.2);
#82 = AXIS2_PLACEMENT_3D('',#83,#84,#85);
#83 = CARTESIAN_POINT('',(10.,10.,1.));
#84 = DIRECTION('',(0.,0.,1.));
#85 = DIRECTION('',(1.,0.,-0.));
#86 = PLANE('',#87);
#87 = AXIS2_PLACEMENT_3D('',#88,#89,#90);
#88 = CARTESIAN_POINT('',(10.,10.,1.));
#89 = DIRECTION('',(0.,0.,1.));
#90 = DIRECTION('',(1.,0.,-0.));
#91 = ADVANCED_FACE('',(#92),#110,.T.);
#92 = FACE_BOUND('',#93,.T.);
#93 = EDGE_LOOP('',(#94,#95,#103,#109));
#94 = ORIENTED_EDGE('',*,*,#49,.F.);
#95 = ORIENTED_EDGE('',*,*,#96,.T.);
#96 = EDGE_CURVE('',#41,#97,#99,.T.);
#97 = VERTEX_POINT('',#98);
#98 = CARTESIAN_POINT('',(12.032534971525,9.158096448797,0.));
#99 = LINE('',#100,#101);
#100 = CARTESIAN_POINT('',(10.,10.,0.));
#101 = VECTOR('',#102,1.);
#102 = DIRECTION('',(-0.923879532511,0.382683432365,0.));
#103 = ORIENTED_EDGE('',*,*,#104,.T.);
#104 = EDGE_CURVE('',#97,#73,#105,.T.);
#105 = LINE('',#106,#107);
#106 = CARTESIAN_POINT('',(12.032534971525,9.158096448797,-1.E-02));
#107 = VECTOR('',#108,1.);
#108 = DIRECTION('',(0.,0.,1.));
#109 = ORIENTED_EDGE('',*,*,#72,.F.);
#110 = PLANE('',#111);
#111 = AXIS2_PLACEMENT_3D('',#112,#113,#114);
#112 = CARTESIAN_POINT('',(10.,10.,-1.E-02));
#113 = DIRECTION('',(0.382683432365,0.923879532511,-0.));
#114 = DIRECTION('',(0.923879532511,-0.382683432365,0.));
#115 = ADVANCED_FACE('',(#116),#135,.F.);
#116 = FACE_BOUND('',#117,.F.);
#117 = EDGE_LOOP('',(#118,#126,#127,#128));
#118 = ORIENTED_EDGE('',*,*,#119,.T.);
#119 = EDGE_CURVE('',#120,#33,#122,.T.);
#120 = VERTEX_POINT('',#121);
#121 = CARTESIAN_POINT('',(10.841903551203,12.032534971525,0.));
#122 = LINE('',#123,#124);
#123 = CARTESIAN_POINT('',(13.826834323651,19.238795325113,0.));
#124 = VECTOR('',#125,1.);
#125 = DIRECTION('',(0.382683432365,0.923879532511,-0.));
#126 = ORIENTED_EDGE('',*,*,#40,.T.);
#127 = ORIENTED_EDGE('',*,*,#96,.T.);
#128 = ORIENTED_EDGE('',*,*,#129,.F.);
#129 = EDGE_CURVE('',#120,#97,#130,.T.);
#130 = CIRCLE('',#131,2.2);
#131 = AXIS2_PLACEMENT_3D('',#132,#133,#134);
#132 = CARTESIAN_POINT('',(10.,10.,0.));
#133 = DIRECTION('',(0.,0.,1.));
#134 = DIRECTION('',(1.,0.,-0.));
#135 = PLANE('',#136);
#136 = AXIS2_PLACEMENT_3D('',#137,#138,#139);
#137 = CARTESIAN_POINT('',(10.,10.,0.));
#138 = DIRECTION('',(0.,0.,1.));
#139 = DIRECTION('',(1.,0.,-0.));
#140 = ADVANCED_FACE('',(#141),#152,.T.);
#141 = FACE_BOUND('',#142,.T.);
#142 = EDGE_LOOP('',(#143,#144,#145,#146));
#143 = ORIENTED_EDGE('',*,*,#119,.T.);
#144 = ORIENTED_EDGE('',*,*,#32,.T.);
#145 = ORIENTED_EDGE('',*,*,#63,.F.);
#146 = ORIENTED_EDGE('',*,*,#147,.F.);
#147 = EDGE_CURVE('',#120,#64,#148,.T.);
#148 = LINE('',#149,#150);
#149 = CARTESIAN_POINT('',(10.841903551203,12.032534971525,-1.E-02));
#150 = VECTOR('',#151,1.);
#151 = DIRECTION('',(0.,0.,1.));
#152 = PLANE('',#153);
#153 = AXIS2_PLACEMENT_3D('',#154,#155,#156);
#154 = CARTESIAN_POINT('',(17.653668647302,28.477590650226,-1.E-02));
#155 = DIRECTION('',(0.923879532511,-0.382683432365,0.));
#156 = DIRECTION('',(-0.382683432365,-0.923879532511,0.));
#157 = ADVANCED_FACE('',(#158),#164,.F.);
#158 = FACE_BOUND('',#159,.F.);
#159 = EDGE_LOOP('',(#160,#161,#162,#163));
#160 = ORIENTED_EDGE('',*,*,#80,.F.);
#161 = ORIENTED_EDGE('',*,*,#147,.F.);
#162 = ORIENTED_EDGE('',*,*,#129,.T.);
#163 = ORIENTED_EDGE('',*,*,#104,.T.);
#164 = CYLINDRICAL_SURFACE('',#165,2.2);
#165 = AXIS2_PLACEMENT_3D('',#166,#167,#168);
#166 = CARTESIAN_POINT('',(10.,10.,-1.E-02));
#167 = DIRECTION('',(0.,0.,1.));
#168 = DIRECTION('',(1.,0.,-0.));
#169 = ( GEOMETRIC_REPRESENTATION_CONTEXT(3)
GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT((#173)) GLOBAL_UNIT_ASSIGNED_CONTEXT
((#170,#171,#172)) REPRESENTATION_CONTEXT('Context #1',
'3D Context with UNIT and UNCERTAINTY') );
#170 = ( LENGTH_UNIT() NAMED_UNIT(*) SI_UNIT(.MILLI.,.METRE.) );
#171 = ( NAMED_UNIT(*) PLANE_ANGLE_UNIT() SI_UNIT($,.RADIAN.) );
#172 = ( NAMED_UNIT(*) SI_UNIT($,.STERADIAN.) SOLID_ANGLE_UNIT() );
#173 = UNCERTAINTY_MEASURE_WITH_UNIT(LENGTH_MEASURE(2.E-07),#170,
'distance_accuracy_value','confusion accuracy');
#174 = PRODUCT_RELATED_PRODUCT_CATEGORY('part',$,(#7));
ENDSEC;
END-ISO-10303-21;

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -0,0 +1,14 @@
50 PCD; 76 corners flush against motor, 2.5mm outboard in 9.5x5.5 slot (width assumed).
3/4 open pillars outer diameter 12mm, M4 bore 4.4mm; nominal radial wall away from opening 3.8mm.
Each 90 degree opening faces 22.5 degrees from outward X toward its respective nearby 76mm corner.
PCB and magnet positions retain nominal 1mm gap with 0.5mm C shims.
M4x20 bolt without a head washer: nominal motor engagement 5.9mm; actual thread depth unknown.
minimum pillar/corner distances mm: 0.6463, 0.6463, 0.6463, 0.6463
Estimated material under 7mm head by sampling mm2: 24.00, 24.00, 24.00, 24.00
Positive volume intersections >0.001mm3 for support and shims:
none in checked pairs
Tool clearance, 7.5mm cylinder:
tool0: no checked obstruction
tool1: no checked obstruction
tool2: no checked obstruction
tool3: no checked obstruction

View File

@@ -0,0 +1,3 @@
EncoderBracket solid=True triangles=7028 volume=7960.40576 zmin=-0.00000
Shim05 solid=True triangles=196 volume=36.58143 zmin=0.00000
Shim10 solid=True triangles=196 volume=73.16286 zmin=0.00000

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -0,0 +1,40 @@
# 50 mm 孔圈:半开放立柱编码器支架 V1
这是供首次试装的 3D 打印件,基于现有近似电机和编码器模型。角码固定在 76 mm 孔圈并直接贴电机;支架使用 50 mm 孔圈,柱开口面向相邻角码。原电机模型、磁铁座和其他支架文件未修改。
## 文件与打印
| 文件 | 数量 | 内容 |
| --- | --- | --- |
| `EncoderBracket.stl` | 1 | 面板和四个连体半开放立柱 |
| `Shim05.stl` | 4 | 厚 0.5 mm 的开口调整垫片,建议先试装 |
| `Shim10.stl` | 4 | 厚 1 mm 的开口调整垫片,备用 |
STL 摆向已经调整为面板平放于打印平台、立柱朝上。建议 PETG、主件层高 0.2 mm、至少 3 道外墙;在切片预览确认各柱与面板连接完整,按预览决定是否需要支撑。0.5 mm 垫片建议用 0.1 mm 层高,检查打印厚度及翘曲。
`PrintParts.FCStd` 为打印摆向下的三件实体,位于同一原点;分别选取对象查看或使用单独 STL。对应 STEP 单件及 `Assembly.FCStd` / `Assembly.step` 为交换格式及总装。`bracket.png`、`section.png` 和 `assembly.png` 为支架、剖视及总装视图。FreeCAD 对象是脚本生成的实体特征,不是尺寸表驱动的参数化草图;重建 `scripts/rebuild_pcd50_open_pillar.FCMacro` 会覆盖本目录输出。
## 支架结构和尺寸
- 保留 50 mm 分布圆的四个 M4 固定点。四个立柱与 49 mm 面板一体,外径 12 mm,内孔直径 4.4 mm;每柱约 90° 朝邻近角码方向开放,其余约 270° 保留,完整部分名义径向壁厚为 3.8 mm。开口持续到面板下方,面板上的 M4 孔仍是闭孔,给螺丝头保留承压面。
- 每柱高度约 10.4 mm、面板厚 3.2 mm;0.5 mm 垫片装在柱与电机之间。脚及垫片仅固定编码器,不承担电机或方向盘的力。
- PCB 按直径 33 mm、厚 1.6 mm、芯片突出 0.8 mm 的假设设计;三孔使用 M2×4 小自攻螺丝和 Ø1.8 mm 打印导孔,螺丝头按 Ø4 × 1.5 mm 示意。先试配,过紧不要强拧。PCB 背面焊点、元件和实际线缆未建模,必须检查不压线。
- 磁铁座沿用 `models/encoder_print_v1/MagnetHolder.stl`,不需要因本改动重新打印;磁铁为用户已有的 Ø10 × 3 mm 径向充磁磁铁。
## 间隙与方向
初次在四个立柱下各放一片 **0.5 mm** 垫片。每个垫片都要旋转,使其开口朝向对应立柱的开口及相邻角码;四个开口方向相互镜像,不要简单按每 90° 旋转。四处始终使用相同厚度,以免 PCB 倾斜。
按当前 PCB/芯片假设,0.5 mm 垫片时磁铁表面至芯片表面的名义间隙为 **1 mm**;四处换 1 mm 垫片时名义间隙增加到 **1.5 mm**。这是 CAD 值而非实测值,需断电手动转动确认无擦碰,再读取编码器角度和磁场状态。先通过 PCB 三孔的间隙微调芯片中心,使磁铁和芯片同轴,再轻轻固定 PCB。
## M4 螺丝与角码
当前模型假定角码厚 3 mm、槽长 9.5 mm、槽宽 5.5 mm,两组孔相位均为 45°,角码相对槽中位向外约 2.5 mm;这些几何值仍需实物核实。角码紧贴电机,76 mm 孔的 M4 螺丝配金属垫圈夹紧角码,编码器的塑料垫片不得装到角码和电机之间。按当前模型,柱与相邻角码的最小距离约 0.65 mm,槽端相对直径 4 mm 螺杆余量约 0.25 mm;实际公差可能改变结果。
50 mm 孔需长 M4 螺丝穿过面板和立柱。按模型从电机面到面板上表面 14.1 mm、0.5 mm 脚垫片、不使用螺丝头垫圈计算,M4×20 理论进牙约 5.9 mm;加 0.8 mm 螺丝头垫圈时约 5.1 mm。长螺丝仅作选型候选:电机实际有效螺纹深度未确认,须检查不顶底、并具有足够有效咬合;更换脚垫片厚度或螺丝头垫圈后需重新计算。勿过度拧紧塑料支架。
先将 PCB 装在支架上;将四个调整垫片和支架沿轴向放置并逐颗拧入 50 mm 螺丝,调整中心;随后按实际空间安装并紧固角码。四处开口方向不同,不能假定整件可以单向侧滑套入已装好的全部螺丝。
## 验证范围
`mesh_check.txt` 是三个 STL 的重新加载、闭合及打印高度检查;`geometry_check.txt` 是简化总装中的实体重叠、柱到角码间距、M4 螺丝头承压面和部分工具包络检查。未进行实际切片、打印、实物装配、动态旋转、热变形、螺纹深度或承载试验。角码槽宽、孔圈相位、实际螺丝头及板件尺寸均可能使模型需要调整。