This commit is contained in:
iamboss 2025-12-08 23:10:08 +08:00
parent c79894de58
commit 8c3283ab01
6 changed files with 139 additions and 75 deletions

View File

@ -2,7 +2,7 @@
<CylindroidHolder>
<Name>default</Name>
<Note>BT40-ER16-090</Note>
<Cylindroid LongitudeNum="24">
<Cylindroid>
<PairZr>(0,25)</PairZr>
<PairZr>(36.5,25)</PairZr>
<PairZr>(36.5,44.5)</PairZr>
@ -10,4 +10,10 @@
<PairZr>(106.6,40)</PairZr>
<PairZr>(136.44,40)</PairZr>
</Cylindroid>
<PolarResolution2d>
<PolarResolution2d>
<LinearResolution_mm>0.5</LinearResolution_mm>
<AngleResolution_deg>5</AngleResolution_deg>
</PolarResolution2d>
</PolarResolution2d>
</CylindroidHolder>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<RakeFaceCuttingPara2d>
<Name>S50C-fine.mp</Name>
<Note>SampleFlags = Fx, Fy, Fz; Correlation Coefficient R = 57.79%; FilteredSampleNum = 725220</Note>
<Ksc>776.7735765695861</Ksc>
<Ksn>-1701.0286467145884</Ksn>
<Kpc>8.185515874589065</Kpc>
<Kpn>20.118736350399548</Kpn>
<AnchorRakeAngle_deg>8</AnchorRakeAngle_deg>
</RakeFaceCuttingPara2d>

View File

@ -1,12 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<RakeFaceCuttingPara>
<?xml version="1.0" encoding="utf-8"?>
<RakeFaceCuttingPara2d>
<Name>S50C-fine.mp</Name>
<Note />
<Kse>781.9193047583416</Kse>
<Ksc>534.2515063930691</Ksc>
<Ksn>-1341.4299667097694</Ksn>
<Kpe>12.488024348568263</Kpe>
<Kpc>19.81313632613896</Kpc>
<Kpn>-20.852754261520523</Kpn>
<AnchorRakeAngle_deg>NaN</AnchorRakeAngle_deg>
</RakeFaceCuttingPara>
<Note>SampleFlags = Fx, Fy, Fz; Correlation Coefficient R = 57.79%; FilteredSampleNum = 725220</Note>
<Ksc>776.7735765695861</Ksc>
<Ksn>-1701.0286467145884</Ksn>
<Kpc>8.185515874589065</Kpc>
<Kpn>20.118736350399548</Kpn>
<AnchorRakeAngle_deg>8</AnchorRakeAngle_deg>
</RakeFaceCuttingPara2d>

View File

@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<MillingCourse ApiVersion="3.1.315.0">
<MillingEquipment>
<MachiningProject ApiVersion="3.1.446.0">
<MachiningEquipment>
<SolidMachiningChain>
<MachiningEquipment>
<MachiningChain>
<XmlSource>EmptyMachine.mt</XmlSource>
</SolidMachiningChain>
</MachiningChain>
<SpindleCapability>
<XmlSource>SpindleCapability/test3.SpindleCapability</XmlSource>
</SpindleCapability>
@ -21,9 +21,12 @@
</Geom>
</TransformationGeom>
</Solid>
<TableToWorkpieceTransformer>
<GeomToTableTransformer>
<NoTransform />
</GeomToTableTransformer>
<GeomToWorkpieceTransformer>
<StaticTranslation Trans="(0, 0, 10)" />
</TableToWorkpieceTransformer>
</GeomToWorkpieceTransformer>
</Fixture>
</Fixture>
<Workpiece>
@ -47,8 +50,8 @@
<StaticTranslation Trans="(45, 70, -30)" />
</WorkpieceGeomToFixtureBuckleTransformer>
<IdealGeom />
<MillingPara>
<RakeFaceCuttingPara>
<CuttingPara>
<RakeFaceCuttingPara3d>
<Name>AA7075 (update on 20241219)</Name>
<Note>AA7075 (update on 20241219) exp on 2017</Note>
<Kse>347.79177234887237</Kse>
@ -58,8 +61,8 @@
<Kpc>0.9948729460349305</Kpc>
<Kpn>-0.7964217170018251</Kpn>
<AnchorRakeAngle_deg>NaN</AnchorRakeAngle_deg>
</RakeFaceCuttingPara>
</MillingPara>
</RakeFaceCuttingPara3d>
</CuttingPara>
<WorkpieceMaterial>
<XmlSource>WorkpieceMaterial/FC30.WorkpieceMaterial</XmlSource>
</WorkpieceMaterial>
@ -68,23 +71,26 @@
<TableToComp>
<NoTransform />
</TableToComp>
<BackgroundAndCoolantHeatCondition>
<BackgroundTemperature_C>25</BackgroundTemperature_C>
<CoolantHeatTransferCoefficient_Wdm2K>1000</CoolantHeatTransferCoefficient_Wdm2K>
</BackgroundAndCoolantHeatCondition>
<CoolantHeatCondition>
<CoolantTemperature_C>25</CoolantTemperature_C>
<CoolantConvectionCoefficient_Wdm2K>1000</CoolantConvectionCoefficient_Wdm2K>
</CoolantHeatCondition>
</MachiningEquipment>
</MillingEquipment>
<MillingToolHouse>
</MachiningEquipment>
<MachiningToolHouse>
<MachiningToolHouse>
<Entry ID="1">
<StickMachiningTool>
<MillingTool>
<Note>P-SE0604 (Speed Tiger)</Note>
<Holder>
<XmlSource>BT40-ER16-090.Holder</XmlSource>
</Holder>
<Cutter>
<MillingCutter>
<MainIntegralMode>SolidEnd</MainIntegralMode>
<Name></Name>
<Note></Note>
<IntegralMode>SolidEnd</IntegralMode>
<ShaperProfile>
<AptProfile>
<Apt>
@ -107,7 +113,7 @@
<TransformationGeom>
<Transformer />
<Geom>
<Cylindroid LongitudeNum="12">
<Cylindroid>
<PairZr>(16,3)</PairZr>
<PairZr>(50,3)</PairZr>
</Cylindroid>
@ -134,7 +140,7 @@
</BaselineOneContour>
</UniformContourTray>
</FluteContourTray>
<BodyMaterial>
<FluteMaterial>
<CutterMaterial>
<Name>WC-Co6-800nm</Name>
<Note></Note>
@ -142,7 +148,7 @@
<PoissonRatio>0</PoissonRatio>
<TensileStrength_MPa>1440</TensileStrength_MPa>
<ThermalExpansionCoefficient_dMK>6.7</ThermalExpansionCoefficient_dMK>
<HeatTransferCoefficient_WdmK>70</HeatTransferCoefficient_WdmK>
<HeatConductivity_WdmK>70</HeatConductivity_WdmK>
<HeatCapacity_JdgK>0.34</HeatCapacity_JdgK>
<Density_gdcm3>14.95</Density_gdcm3>
<MeltingTemperature_K>3143.16</MeltingTemperature_K>
@ -161,7 +167,35 @@
<Entry Temperature_K="873.1600000000001">25.7</Entry>
</TemperatureVsWearCoefficientCurve>
</CutterMaterial>
</BodyMaterial>
</FluteMaterial>
<ShankMaterial>
<CutterMaterial>
<Name>WC-Co6-800nm</Name>
<Note></Note>
<ElasticModulus_GPa>600</ElasticModulus_GPa>
<PoissonRatio>0</PoissonRatio>
<TensileStrength_MPa>1440</TensileStrength_MPa>
<ThermalExpansionCoefficient_dMK>6.7</ThermalExpansionCoefficient_dMK>
<HeatConductivity_WdmK>70</HeatConductivity_WdmK>
<HeatCapacity_JdgK>0.34</HeatCapacity_JdgK>
<Density_gdcm3>14.95</Density_gdcm3>
<MeltingTemperature_K>3143.16</MeltingTemperature_K>
<FusionLatentHeat_Jdg>400</FusionLatentHeat_Jdg>
<FrictionCoefficient>0.44</FrictionCoefficient>
<TemperatureVsHardnessCurve>
<Entry Temperature_K="298.16">17500</Entry>
<Entry Temperature_K="873.16">14800</Entry>
<Entry Temperature_K="1013.16">12500</Entry>
<Entry Temperature_K="1173.16">10000</Entry>
</TemperatureVsHardnessCurve>
<TemperatureVsWearCoefficientCurve>
<Entry Temperature_K="298.16">1.19</Entry>
<Entry Temperature_K="473.16">1.86</Entry>
<Entry Temperature_K="673.1600000000001">7.1</Entry>
<Entry Temperature_K="873.1600000000001">25.7</Entry>
</TemperatureVsWearCoefficientCurve>
</CutterMaterial>
</ShankMaterial>
<CoatingLayerList>
<ThermalLayer1D>
<Material>
@ -172,7 +206,7 @@
<PoissonRatio>0.25</PoissonRatio>
<TensileStrength_MPa>1350</TensileStrength_MPa>
<ThermalExpansionCoefficient_dMK>7.5</ThermalExpansionCoefficient_dMK>
<HeatTransferCoefficient_WdmK>25</HeatTransferCoefficient_WdmK>
<HeatConductivity_WdmK>25</HeatConductivity_WdmK>
<HeatCapacity_JdgK>0.55</HeatCapacity_JdgK>
<Density_gdcm3>4.2</Density_gdcm3>
<MeltingTemperature_K>3273</MeltingTemperature_K>
@ -196,33 +230,35 @@
<Length_mm>0.003</Length_mm>
</ThermalLayer1D>
</CoatingLayerList>
<CutterMass_g CutterMassAssignmentMode="EvaluateByVolume">16.806603351650548</CutterMass_g>
<ShankMass_g MassAssignmentMode="EvaluateByVolume">16.806603351650548</ShankMass_g>
<HoneRadius_um>30</HoneRadius_um>
<ReliefAngle_deg>5</ReliefAngle_deg>
<MillingCutterOptLimit>
<MillingCutterOptLimit>
<MillingCutterOptOption>
<EnableOpt>true</EnableOpt>
<YieldingSafetyFactor>2</YieldingSafetyFactor>
<EnableLimitByMinimumUncutChipThickness>true</EnableLimitByMinimumUncutChipThickness>
<EnableLimitByReliefAngle>true</EnableLimitByReliefAngle>
<MinFeedPerTooth_mm>0</MinFeedPerTooth_mm>
<MaxFeedPerTooth_mm>999</MaxFeedPerTooth_mm>
</MillingCutterOptLimit>
</MillingCutterOptOption>
</MillingCutterOptLimit>
</MillingCutter>
</Cutter>
<PreservedDistanceBetweenFluteAndSpindleNose_mm>5</PreservedDistanceBetweenFluteAndSpindleNose_mm>
<ExposedCutterHeight_mm>21</ExposedCutterHeight_mm>
<ObservationAnchorReference>SpindleBuckleAnc</ObservationAnchorReference>
<RelativeHeightFromObservationAnchor_mm>-56.6</RelativeHeightFromObservationAnchor_mm>
<ObservationRingRadius_mm>44.5</ObservationRingRadius_mm>
</StickMachiningTool>
</MillingTool>
</Entry>
</MachiningToolHouse>
</MillingToolHouse>
</MachiningToolHouse>
<NcEnv>
<NcEnv>
<CncBrand>Fanuc</CncBrand>
<HomeMc>(0, 0, 0)</HomeMc>
<ToolingMc />
<ToolingMcXyz>(0, 0, 0)</ToolingMcXyz>
<ToolingMcAbc_deg>(0, 0, 0)</ToolingMcAbc_deg>
<IsIdealOffsetDependentOnToolHouse>true</IsIdealOffsetDependentOnToolHouse>
<MillingToolOffsetTable>
<Entry ID="1">
@ -237,18 +273,18 @@
<SetToolHeightCompensationOnFeatureNormal>false</SetToolHeightCompensationOnFeatureNormal>
<EnableShortestRotary>true</EnableShortestRotary>
<EnableArcCornerRadiusCompensation>false</EnableArcCornerRadiusCompensation>
<StrokeLimitXYZ_mm>
<StrokeLimitXyz_mm>
<Box3d>
<Min>(INF, INF, INF)</Min>
<Max>(-INF, -INF, -INF)</Max>
<Min>(-INF, -INF, -INF)</Min>
<Max>(INF, INF, INF)</Max>
</Box3d>
</StrokeLimitXYZ_mm>
<StrokeLimitABC_deg>
</StrokeLimitXyz_mm>
<StrokeLimitAbc_deg>
<Box3d>
<Min>(INF, INF, INF)</Min>
<Max>(-INF, -INF, -INF)</Max>
<Min>(-INF, -INF, -INF)</Min>
<Max>(INF, INF, INF)</Max>
</Box3d>
</StrokeLimitABC_deg>
</StrokeLimitAbc_deg>
<MaxRotarySpeedABC_rpm>(60, 60, 60)</MaxRotarySpeedABC_rpm>
<MaxSpindleSpeed_rpm>60000</MaxSpindleSpeed_rpm>
<RapidFeedrate_mmdmin>20000</RapidFeedrate_mmdmin>
@ -276,21 +312,37 @@
</IsoCoordinateTable>
</NcEnv>
</NcEnv>
<RootListCommand>
<CsvRunnerConfig>
<CsvRunnerConfig>
<LineBeginCsScriptTag>LineBeginCsScript</LineBeginCsScriptTag>
<LineEndCsScriptTag>LineEndCsScript</LineEndCsScriptTag>
<MachineCoordinatePrefixTag>MC.</MachineCoordinatePrefixTag>
<CutterLocationPrefixTag>CL.</CutterLocationPrefixTag>
<ToolIdTag>ToolId</ToolIdTag>
<SpindleSpeedTag_rpm>SpindleSpeed_rpm</SpindleSpeedTag_rpm>
<SpindleDirectionTag>Spd.Dir.</SpindleDirectionTag>
<FeedrateTag_mmdmin>Feedrate_mmdmin</FeedrateTag_mmdmin>
<DurationTag>StepDuration</DurationTag>
<ActualTimeTag>ActualTime</ActualTimeTag>
</CsvRunnerConfig>
</CsvRunnerConfig>
<PlayerCommand>
<ListCommand>
<CommandEntryList>
<CommandEntry IsEnabled="true">
<EnablingWrapper>
<IsEnabled>true</IsEnabled>
<Command>
<ScriptCommand>
<ScriptTitle>train</ScriptTitle>
<ScriptText>////一般設定////
MillingForceCycleDivisionNum=180;
MachiningResolution=0.125/8;
DispCache_Mb = 860; //GRAM暫存空間 (Mb)
MachiningMotionResolution = FeedPerTooth;
EnableCollisionDetection = false; //是否啟用碰撞檢測開啟
EnablePauseOnCollision = false; //是否啟用碰撞發生時暫停
EnableMillingForceEvaluation=true;
EnablePhysics=true;
DefaultParaTemplateDimension=2;
ClearTimeMappingData();
@ -303,20 +355,17 @@ AddTimeDataByFile("high1",dynamometerFile,60.0392,60.9723);
AddTimeDataByFile("high2",dynamometerFile,64.3404,64.8226);
AddTimeDataByFile("high3",dynamometerFile,66.8694,67.2146);
//WriteRuntimeGeom("Cache/raw.wct"); //寫入暫存檔
//ReadRuntimeGeom("Cache/raw.wct"); //讀取暫存檔
RunNcFile("NC/lines.nc");
PlayNcFile("NC/lines.nc");
TrainMillingPara(Fx|Fy|Fz, "Output/S50C-fine.mp",0.2);
</ScriptText>
<IsSimpleMode>true</IsSimpleMode>
</ScriptCommand>
</Command>
</CommandEntry>
</EnablingWrapper>
</CommandEntryList>
</ListCommand>
</RootListCommand>
</PlayerCommand>
<TimeMapping>
<TimeMapping>
<Entrys>
@ -366,15 +415,15 @@ TrainMillingPara(Fx|Fy|Fz, "Output/S50C-fine.mp",0.2);
</TimeMapping>
</TimeMapping>
<EnableCollisionDetection>false</EnableCollisionDetection>
<EnablePauseOnCollision>false</EnablePauseOnCollision>
<EnablePauseOnFailure>false</EnablePauseOnFailure>
<EnableStrokeLimitCheck>true</EnableStrokeLimitCheck>
<MillingActRunnerConfig>
<MillingActRunnerConfig>
<EnableAdvancedPhysics>true</EnableAdvancedPhysics>
<EnableExternalEvaluation>true</EnableExternalEvaluation>
<EnableDeflectionTransformation>false</EnableDeflectionTransformation>
<MachiningMotionResolution>
<FeedPerCycleMachiningMotionResolution />
<FeedPerToothMachiningMotionResolution />
</MachiningMotionResolution>
<InitSpindleTemperature_C>35</InitSpindleTemperature_C>
</MillingActRunnerConfig>
</MillingActRunnerConfig>
<InspectingKey>TrainingErrRatio</InspectingKey>
@ -617,5 +666,4 @@ TrainMillingPara(Fx|Fy|Fz, "Output/S50C-fine.mp",0.2);
</MillingGuide>
</MillingGuide>
<NcOptProc />
<DispCacheMb>860</DispCacheMb>
</MillingCourse>
</MachiningProject>

View File

@ -4,8 +4,10 @@
<Note></Note>
<EnergyEfficiency>0.4</EnergyEfficiency>
<GearShiftSpindleSpeed_rpm>4000.0000000000005</GearShiftSpindleSpeed_rpm>
<SpindleSpeedToPowerContours>
<Contour InsistentRatio="0.2">
<DryRunFrictionPowerCoefficient_mWdrpm>4.82</DryRunFrictionPowerCoefficient_mWdrpm>
<DryRunWindagePowerCoefficient_pWdrpm3>90</DryRunWindagePowerCoefficient_pWdrpm3>
<WorkableDurationToSpindleSpeedPowerContoursDictionary>
<Contour WorkableDuration-min="120">
<SpindleSpeedToPower>
<SpindleSpeed-RPM>0</SpindleSpeed-RPM>
<Power-kW>0</Power-kW>
@ -23,7 +25,7 @@
<Power-kW>2.5</Power-kW>
</SpindleSpeedToPower>
</Contour>
<Contour InsistentRatio="0.8">
<Contour WorkableDuration-min="480">
<SpindleSpeedToPower>
<SpindleSpeed-RPM>0</SpindleSpeed-RPM>
<Power-kW>0</Power-kW>
@ -41,7 +43,7 @@
<Power-kW>5</Power-kW>
</SpindleSpeedToPower>
</Contour>
<Contour InsistentRatio="1">
<Contour WorkableDuration-min="INF">
<SpindleSpeedToPower>
<SpindleSpeed-RPM>0</SpindleSpeed-RPM>
<Power-kW>0</Power-kW>
@ -59,9 +61,9 @@
<Power-kW>3</Power-kW>
</SpindleSpeedToPower>
</Contour>
</SpindleSpeedToPowerContours>
<SpindleSpeedToTorqueContours>
<Contour InsistentRatio="1">
</WorkableDurationToSpindleSpeedPowerContoursDictionary>
<WorkableDurationToSpindleSpeedTorqueContoursDictionary>
<Contour WorkableDuration-min="INF">
<SpindleSpeedToTorque>
<SpindleSpeed-RPM>0</SpindleSpeed-RPM>
<Torque-Nm>50</Torque-Nm>
@ -91,5 +93,5 @@
<Torque-Nm>5</Torque-Nm>
</SpindleSpeedToTorque>
</Contour>
</SpindleSpeedToTorqueContours>
</WorkableDurationToSpindleSpeedTorqueContoursDictionary>
</SpindleCapability>

View File

@ -8,7 +8,7 @@
<TensileYieldStrength_MPa>200</TensileYieldStrength_MPa>
<ElogationRaioAtBreak>0.01</ElogationRaioAtBreak>
<HeatCapacity_JdgK>0.46</HeatCapacity_JdgK>
<HeatTransferCoefficient_WdmK>52</HeatTransferCoefficient_WdmK>
<HeatConductivity_WdmK>52</HeatConductivity_WdmK>
<Density_gdcm3>7.2</Density_gdcm3>
<FusionLatentHeat_Jdg>220</FusionLatentHeat_Jdg>
<MeltingTemperature_C>1150</MeltingTemperature_C>