Neste trabalho buscou-se desenvolver uma metodologia para otimização do projeto de transmissões por engrenagens cilíndricas com aplicação de técnicas de correção de perfil. A metodologia apresentada propicia a análise e projeção do comportamento dos mais variados perfis do dentado, utilizando a geração virtual customizada de transmissões de engrenagens em condições de engrenamento previamente definidas através do software Catia.
A grandeza módulo influencia exclusiva e diretamente na dimensão da engrenagem e do dente, alterando apenas em proporção, sem influência no perfil.
Para um dado ângulo de pressão, na medida em que o número de dentes da engrenagem cilíndrica cresce, maior a possibilidade de este ser superior ao número mínimo de dentes sem interferência e menor a possibilidade do aparecimento do adelgaçamento na base do dente.
Para um dado número de dentes, quanto maior o ângulo de pressão utilizado na engrenagem cilíndrica, menor a possibilidade do aparecimento do adelgaçamento na base do dente.
Ao aplicar um fator de correção de perfil positiva ou negativa, haverá um aumento dos diâmetros de base, interno e externo, e haverá a diminuição dos diâmetros de base, interno e externo, respectivamente.
Se o número de dentes for grande e o perfil tender para a cremalheira, a influência da correção de perfil é pequena. Pode ser observado que o aparecimento da curva trocoide se dá a partir do momento em que o raio de base torna-se superior ao raio do pé do dente.
Ao analisarem-se as tensões atuantes, observa-se que a correção influencia diretamente e que quanto maior o número de dentes, menores são as variações das tensões na base do dente. Observa-se também que os valores alcançados, para tanto na aplicação do método analítico, quanto do método por elementos finitos, são da mesma ordem de grandeza.
Pode-se afirmar que o a metodologia proposta para otimização do projeto de transmissões por engrenagens cilíndricas com correção de perfil utilizando a geração virtual customizada de engrenagens cilíndricas com aplicação da simulação numérica pelo método de elementos finitos mostrou-se satisfatória, podendo ser utilizada para validar e auxiliar os cálculos analíticos.
Gears are mechanical elements critical to industrial processes. These components, when properly sized, fulfill their functions and power transfer performance can be optimized. This optimization is done basically by fitting the profiles of gears using displacement techniques or profile correction, providing the most varied conditions increased transmission capacity and the improvement of the coverage and interference. Therefore the development of methodologies for design optimization of gears using new tools becomes essential. The objective of this work is to develop a methodology for design optimization of cylindrical gears for transmissions with application of profile correction using the virtual generation of custom-gear meshing conditions previously set via software Catia. A comparison is made considering the qualitative change gear parameters such as pressure angle, minimum number of teeth, types of profile correction (0 V0 and V), degree of coverage, interference and reduction ratio. We use numerical simulation by finite element method to validate and support the traditional analytical calculations.
SUGESTÕES PARA TRABALHOS FUTUROS
O tema abordado apresenta uma série de trabalhos futuros. Inicialmente, pode ser ampliada a abrangência da metodologia desenvolvida, podendo ser aplicada a outros tipos de engrenagem, tais como: Engrenagem sem fim, cremalheiras, engrenagens cônicas. A metodologia também pode ser aplicada a outros elementos de máquinas, tais como: Parafusos, eixos, freios, mancais, correias.
Poderá ser desenvolvido parte complementar da metodologia visando cálculos de resistência da engrenagem, considerando dados dinâmicos e fatores de aplicação e ou critério da vida.
Pode ser melhorada a interface de interação com o usuário, dimensionando-a de forma a facilitar o entendimento e a inserção dos dados de entrada; podendo também, torna-la um módulo de trabalho e projeto independente do software de CAD.
Com o intuito de verificar a metodologia numa aplicação prática, poderá ser feita uma comparação dimensional, de trabalho e de resistências a fadiga de uma engrenagem usinada da forma convencional por geração e outra com perfil gerado pela metodologia aqui desenvolvida, aplicando a cópia do perfil numa máquina a CNC.
BUCKINGHAM, E., “Analytical Mechanics of Gears”, Editor Dover, USA, 1988
BUDYNAS, R. G.; NISBETT, J. K.; “Elementos de Máquinas de Shigley: Projeto de Engenharia Mecânica”, 8ª edição, Bookman, Porto Alegre, Brasil, 2011.
BEZERRA, R. A; JUNIOR, F. I. S., “Projeto de Engrenagens de Dentes Retos com Perfil
Evolvental”, (COBEM) Congresso Brasileiro de Engenharia Mecânica, 2001.
CASTRO, R. M., “Critério de projeto para engrenagens helicoidais aplicadas em transmissões
mecânicas veiculares”, Dissertação de Mestrado apresentado à Escola Politécnica da
Universidade de São Paulo (USP), 2005.
DASSAULT SYSTEMES, <http://www.3ds.com/products-services/catia>, acessado em 27/03/2014.
FORS, T., “Development of a Modular API for the CAD-System Catia V5”, Master’s Thesis in Computer Science at the School of Computer Science and Engineering, Royal Institute of Technology, 2004.
GEMAQUE, M. J. A., "Abordagem para solução de um problema metrológico na indústria - Medição de engrenagens", Dissertação de Mestrado apresentado à Universidade Federal de Santa Catarina, 2004.
INDUSOFT WEB STUDIO, “VBScript Reference Manual”, 2007, <http://www.indusoft.com>, acessado em 27/03/2014.
INTERNATIONAL STANDARD, ISO 6336, “Calculation of load capacity of spur and helical
gears”, International Organization for Standartization, Second Edition, 2006.
INTERNATIONAL STANDARD, ISO 21771, “Gears - Cylindrical involute gears and gear pairs -
Concepts and geometry”, International Organization for Standartization, Second Edition, 2006. MILOVIC, M.; TURRIN, M. “Traçado do Perfil de Engrenagens Cilíndricas de Evolvente”, Mundo
Mecânico, 1983.
MIRANDA, R. J. C. “Desenvolvimento de um programa didático computacional destinado à geração de códigos de comando numérico a partir de modelos 3D obtidos em plataforma CAD
considerando a técnica prototipagem rápida”. Dissertação de Mestrado apresentada à
Universidade Federal de Minas Gerais (UFMG), 2009.
NIEMANN, G., "Elementos de Máquinas", Editora Edgard Blucher, Vol. 2, 2002.
NORTON, R. L. “Projeto de máquinas, Uma abordagem integrada”, 4º edição. São Paulo. 2013. pp. 622-629.
PROVENZA, F. “Desenhista de máquinas”, 46º edição. São Paulo. 1991. Editora F. Provenza. pp. 6-78 - 6-106.
PROVENZA, F. “Projetista de máquinas”, 46º edição. São Paulo. 1991. Editora F. Provenza. pp. 4- 172 - 4-186.
QUEIROZ, A. A.; BRAZZALLE, R. R., “Determinação do Perfil de Engrenagens de Evolvente
com minicalculadoras”, Mundo Mecânico, 1978.
SILVEIRA, Z. C. “Desenvolvimento de um sistema computacional de auxílio ao cálculo e desenho de elementos de máquinas”, Dissertação de Mestrado apresentada à Universidade de São Paulo, 1998.
SOUZA, A. F.; ULBRICH, C. B. L.. Engenharia Integrada por Computador e Sistemas CAD/CAM/CNC Princípios e Aplicações. 1ª edição. São Paulo: Artliber, 2009
SOUZA, G. R., “Influência do ângulo de pressão em projetos de engrenagens”, Dissertação de Mestrado apresentada à Universidade Estadual de Campinas (UNICAMP), 2003.
VALÉRIO, R.C.; BRITO, J.N.; SOUZA, G. R., “Geração Automática de Desenhos na Plataforma CAD Solid Works a Partir de Células Paramétricas Desenvolvidas em Ambiente Visual Basic”, (SIMMEC) Simpósio de Mecânica Computacional, UFSJ, 2010.
No trabalho de Milovici & Turrin (1983) e Queiroz & Brazzalle (1978), há a descrição de um programa para gerar perfis de engrenagens, o qual é baseado em métodos analíticos.
Obtenção do ponto P pertencente a curva evolvente em relação a um sistema de coordenadas situado no centro da engrenagem:
Obtenção do raio de base:
r = r cos α
Obtenção do ângulo de pressão no ponto P:α = cos
−r
r
Obtenção da evolvente:θ = tan α − α = evα
Obtenção das coordenadas do ponto P da evolvente.X = r sin θ
′− θ
Y = r cos θ
′− θ
Onde rp é o raio vetor do Ponto P.
Obtenção do ponto T pertencente a curva trocoide em relação a um sistema de coordenadas situado no centro da engrenagem:
θ = tan
−[√r − r − h
fr − h
f] −
√r − r − h
fr − h
fθ´ =
2Z +π
2xZ tan α evα
δ = α −
r − h
fr− tan α
Obtenção das coordenadas do ponto T da evolvente.
X = r sin θ
′+ δ − θ
Y = r cos θ´ + δ − θ
APÊNDICE B -
Código VBScript gerado.Para a modelagem de todos os casos estabelecidos das engrenagens cilíndricas foram previamente desenvolvidos dois templates de engrenagens padrão do tipo reta utilizando o programa Catia V5 Release 19. Os modelos obedecem a ordem lógica de quando o diâmetro interno for menor que o diâmetro de base haverá o aparecimento da trocoide e consequente adelgaçamento. A macro desenvolvida obedece esta relação. Caso o diâmetro interno seja maior que o diâmetro de base, abrirá o segundo arquivo, que elimina a trocoide. Abaixo, apresenta de forma completa a versão final do programa gerado em VBScript capaz de executar o descrito acima.
Language="VBSCRIPT" Sub CATMain()
M = InputBox ("Digite o MÓDULO:","DADOS DA ENGRENAGEM")
A = InputBox ("Digite o ÂNGULO DE PRESSÃO:","DADOS DA ENGRENAGEM") Z = InputBox ("Digite o NÚMERO DE DENTES:","DADOS DA ENGRENAGEM")
x = InputBox ("Digite o FATOR DE CORREÇÃO DO PERFIL:","DADOS DA ENGRENAGEM") B = InputBox ("Digite o ÂNGULO DE HÉLICE:","DADOS DA ENGRENAGEM")
Arad = (A*3.14159265)/180 Brad = (B*3.14159265)/180 Mn = M Mf = Mn * Cos(Brad) dpf = (Mn * Z) / Cos(Brad) d = M * Z de = dpf + 2 * Mn * (1 + x) di = dpf - 2 * Mn * (1.25 - x) pn = Mn * 3.14159265 pf = Mf * 3.14159265 db = M * Z * Cos(Arad) ha = Mn * (1 + x) L = 8 * Mn Reixo = M*3 Rd = M/5 rb = db/2
re = de/2
if rb<ri then
Set documents1 = CATIA.Documents
Set partDocument1 = documents1.Open("F:\paulo\UFMG - Mestrado\Dissertacao\Modelos 3D\19- E_d_r_evolvente_teste.CATPart")
rm2 = (ri + r) / 2 rm3 = (r + re) / 2 AZ = 180/Z
Eva = tan(Arad) - Arad
Olinha = (3.14159265/(2 * Z*Cos(Brad))) + ((2 * x * tan(Arad))/z) + Eva
Myre = ((rb)/(re)) Myrm3 = ((rb)/(rm3)) Myr = ((rb)/(r)) Myrm2 = ((rb)/(rm2)) Myri = ((rb)/(ri))
APre = Atn(-Myre / Sqr(-Myre * Myre + 1)) + 2 * Atn(1)
APrm3 = Atn(-Myrm3 / Sqr(-Myrm3 * Myrm3 + 1)) + 2 * Atn(1) APr = Atn(-Myr / Sqr(-Myr * Myr + 1)) + 2 * Atn(1)
APrm2 = Atn(-Myrm2 / Sqr(-Myrm2 * Myrm2 + 1)) + 2 * Atn(1) APri = Atn(-Myri / Sqr(-Myri * Myri + 1)) + 2 * Atn(1)
Opre = Tan(APre) - APre Oprm3 = Tan(APrm3) - APrm3 Opr = Tan(APr) - APr
Oprm2 = Tan(APrm2) - APrm2 Opri = Tan(APri) - APri
Xpre = re * Sin(Olinha - Opre) Xprm3 = rm3 * Sin(Olinha - Oprm3) Xpr = r * Sin(Olinha - Opr)
Xprm2 = rm2 * Sin(Olinha - Oprm2) Xpri = ri * Sin(Olinha - Opri)
Yprm3 = rm3 * Cos(Olinha - Oprm3) Yprm2 = rm2 * Cos(Olinha - Oprm2)
MsgBox ("Gerando modelo... Clique OK para continuar:")
Set partDocument1 = CATIA.ActiveDocument
Set part1 = partDocument1.Part Set bodies1 = part1.Bodies
Set body1 = bodies1.Item("PartBody") Set sketches1 = body1.Sketches
Set sketch1 = sketches1.Item("Sketch.1") part1.InWorkObject = sketch1
Set factory2D1 = sketch1.OpenEdition()
Set geometricElements1 = sketch1.GeometricElements Set circle2D1 = geometricElements1.Item("Circle.2") circle2D1.SetData 0.000000, 0.000000, 171.000000 Set circle2D2 = geometricElements1.Item("Circle.3") circle2D2.SetData 0.000000, 0.000000, 181.000000 Set circle2D3 = geometricElements1.Item("Circle.4") circle2D3.SetData 0.000000, 0.000000, 189.000000 Set constraints1 = sketch1.Constraints
Set constraint1 = constraints1.Item("ri") Set length1 = constraint1.Dimension length1.Value = ri
Set constraint3 = constraints1.Item("re") Set length3 = constraint3.Dimension length3.Value = re
Set spline2D1 = geometricElements1.Item("Spline.1") Set controlPoint2D1 = spline2D1.GetItem("CtrlPoint.5") controlPoint2D1.SetData 8.400000, 170.793560
Set controlPoint2D2 = spline2D1.GetItem("CtrlPoint.4") controlPoint2D2.SetData 7.600000, 174.800000
Set controlPoint2D3 = spline2D1.GetItem("CtrlPoint.3") controlPoint2D3.SetData 6.200000, 180.893781
Set controlPoint2D4 = spline2D1.GetItem("CtrlPoint.2") controlPoint2D4.SetData 4.800000, 184.000000
Set controlPoint2D5 = spline2D1.GetItem("CtrlPoint.1") controlPoint2D5.SetData 3.000000, 188.976189
Set point2D1 = geometricElements1.Item("Point.138") point2D1.SetData 3.000000, 188.976189
Set point2D2 = geometricElements1.Item("Point.285") point2D2.SetData 8.400000, 170.793560
Set point2D3 = geometricElements1.Item("Point.5") point2D3.SetData 97.086470, 1233.600567
Set line2D1 = geometricElements1.Item("Line.3")
line2D1.SetData 0.000000, 0.000000, 0.078459, 0.996917
Set constraint4 = constraints1.Item("AZ") constraint4.AngleSector = catCstAngleSector1 Set angle1 = constraint4.Dimension
angle1.Value = AZ
Set point2D4 = geometricElements1.Item("Point.158") point2D4.SetData 0.000000, 189.000000
circle2D4.SetData 0.000000, 0.000000, 189.000000 Set point2D5 = geometricElements1.Item("Point.248") point2D5.SetData 13.416505, 170.472864
Set line2D2 = geometricElements1.Item("Line.4")
line2D2.SetData 0.000000, 0.000000, 0.078459, 0.996917
Set constraint5 = constraints1.Item("Xpre") Set length4 = constraint5.Dimension
length4.Value = Xpre
Set constraint6 = constraints1.Item("Xprm3") Set length5 = constraint6.Dimension
length5.Value = Xprm3
Set constraint7 = constraints1.Item("Xpr") Set length6 = constraint7.Dimension length6.Value = Xpr
Set constraint8 = constraints1.Item("Yprm3") Set length7 = constraint8.Dimension
length7.Value = Yprm3
Set point2D6 = geometricElements1.Item("Point.260") point2D6.SetData 8.400000, 170.793560
Set circle2D5 = geometricElements1.Item("Circle.12") circle2D5.SetData 0.000000, 0.000000, 171.000000
Set constraint9 = constraints1.Item("Xprm2") Set length8 = constraint9.Dimension
length8.Value = Xprm2
Set constraint10 = constraints1.Item("Xpri") Set length9 = constraint10.Dimension length9.Value = Xpri
Set point2D7 = geometricElements1.Item("Point.386") point2D7.SetData -13.416505, 170.472864
Set point2D8 = geometricElements1.Item("Point.387") point2D8.SetData 0.000000, 0.000000
Set line2D3 = geometricElements1.Item("Line.10")
line2D3.SetData 0.000000, 0.000000, -0.078459, 0.996917 Set point2D9 = geometricElements1.Item("Point.389") point2D9.SetData -8.400000, 170.793560
Set point2D10 = geometricElements1.Item("Point.390") point2D10.SetData -3.000000, 188.976189
Set spline2D2 = geometricElements1.Item("Spline.14") Set controlPoint2D6 = spline2D2.GetItem("CtrlPoint.5") controlPoint2D6.SetData -8.400000, 170.793560
Set controlPoint2D7 = spline2D2.GetItem("CtrlPoint.4") controlPoint2D7.SetData -7.600000, 174.800000
Set controlPoint2D8 = spline2D2.GetItem("CtrlPoint.3") controlPoint2D8.SetData -6.200000, 180.893781
Set controlPoint2D9 = spline2D2.GetItem("CtrlPoint.2") controlPoint2D9.SetData -4.800000, 184.000000
Set controlPoint2D10 = spline2D2.GetItem("CtrlPoint.1") controlPoint2D10.SetData -3.000000, 188.976189
Set point2D11 = geometricElements1.Item("Point.394") point2D11.SetData 0.000000, 189.000000
Set point2D12 = geometricElements1.Item("Point.395") point2D12.SetData -3.000000, 188.976189
Set circle2D6 = geometricElements1.Item("Circle.24") circle2D6.SetData 0.000000, 0.000000, 189.000000 Set point2D13 = geometricElements1.Item("Point.399") point2D13.SetData -8.400000, 170.793560
Set point2D14 = geometricElements1.Item("Point.400") point2D14.SetData -13.416505, 170.472864
Set circle2D7 = geometricElements1.Item("Circle.25") circle2D7.SetData 0.000000, 0.000000, 171.000000 sketch1.CloseEdition
Set shapes1 = body1.Shapes
Set circPattern1 = shapes1.Item("CircPattern.1") part1.InWorkObject = circPattern1
part1.Update
Set parameters1 = part1.Parameters Set length11 = parameters1.Item
("Engrenagem_Evolvente\PartBody\EdgeFillet.1\CstEdgeRibbon.1\Radius") length11.Value = Rd
part1.Update
Set pad1 = shapes1.Item("Pad.1") Set limit1 = pad1.FirstLimit Set length12 = limit1.Dimension length12.Value = L
part1.Update
circPattern1.CircularPatternParameters = catCompleteCrown Set angularRepartition1 = circPattern1.AngularRepartition Set intParam1 = angularRepartition1.InstancesCount intParam1.Value = Z
part1.Update
Set partDocument1 = CATIA.ActiveDocument Set part1 = partDocument1.Part
Set bodies1 = part1.Bodies
Set body1 = bodies1.Item("PartBody") Set sketches1 = body1.Sketches
Set sketch1 = sketches1.Item("Sketch.2") part1.InWorkObject = sketch1
Set constraints1 = sketch1.Constraints
Set constraint1 = constraints1.Item("Reixo") Set length1 = constraint1.Dimension
length1.Value = Reixo
sketch1.CloseEdition Set shapes1 = body1.Shapes
Set pocket1 = shapes1.Item("Pocket.1") part1.InWorkObject = pocket1
part1.Update
Set specsAndGeomWindow1 = CATIA.ActiveWindow Set viewer3D1 = specsAndGeomWindow1.ActiveViewer Set viewpoint3D1 = viewer3D1.Viewpoint3D
viewer3D1.Reframe
Set viewpoint3D1 = viewer3D1.Viewpoint3D
else
Set documents1 = CATIA.Documents
Set partDocument1 = documents1.Open("F:\paulo\UFMG - Mestrado\Dissertacao\Modelos 3D\18- E_d_r_evolvente_trocoide_curva_teste.CATPart") rm5 = (r + re) / 2 rm9 = (ri + rb) / 2 rm7 = (rm9 + ri) / 2 rm6 = (rm7 + ri) / 2 AZ = 180/Z
Eva = tan(Arad) - Arad Cosap = Cos(Arad)
hf = M * (1.25 - x) S = Arad - (((r - hf) * Tan(Arad)) / r) Myr = ((rb)/(r)) Myre = ((rb)/(re)) Myrb = ((rb)/(rb)) Myrm5 = ((rb)/(rm5))
APDP = Atn(-Myr / Sqr(-Myr * Myr + 1)) + 2 * Atn(1) APDE = Atn(-Myre / Sqr(-Myre * Myre + 1)) + 2 * Atn(1) APDB = 0
APD5 = Atn(-Myrm5 / Sqr(-Myrm5 * Myrm5 + 1)) + 2 * Atn(1)
Opr = Tan(APDP) - APDP Opre = Tan(APDE) - APDE Oprb = Tan(APDB) - APDB Oprm5 = Tan(APD5) - APD5 Oprm6 = Tan(APD6) - APD6 Oprm7 = Tan(APD7) - APD7 Oprm9 = Tan(APD9) - APD9
P1r = (Sqr((r^2) - (r - hf)^2)) / (r - hf) P1re = (Sqr((re^2) - (r - hf)^2)) / (r - hf) P1rb = (Sqr((rb^2) - (r - hf)^2)) / (r - hf) P1ri = (Sqr((ri^2) - (r - hf)^2)) / (r - hf) P1rm6 = (Sqr((rm6^2) - (r - hf)^2)) / (r - hf) P1rm7 = (Sqr((rm7^2) - (r - hf)^2)) / (r - hf) P1rm9 = (Sqr((rm9^2) - (r - hf)^2)) / (r - hf) P2r = (Sqr((r^2) - (r - hf)^2)) / (r) P2re = (Sqr((re^2) - (r - hf)^2)) / (r) P2rb = (Sqr((rb^2) - (r - hf)^2)) / (r) P2ri = (Sqr((ri^2) - (r - hf)^2)) / (r) P2rm6 = (Sqr((rm6^2) - (r - hf)^2)) / (r) P2rm7 = (Sqr((rm7^2) - (r - hf)^2)) / (r)
Otre = Atn(P1re) - P2re Otrb = Atn(P1rb) - P2rb Otri = Atn(P1ri) - P2ri
Otrm6 = Atn(P1rm6) - P2rm6 Otrm7 = Atn(P1rm7) - P2rm7 Otrm9 = Atn(P1rm9) - P2rm9
Xpr = r * Sin(Olinha - Opr) Xpre = re * Sin(Olinha - Opre) Xprm5 = rm5 * Sin(Olinha - Oprm5) Xprb = rb * Sin(Olinha - Oprb)
Yprm5 = rm5 * Cos(Olinha - Oprm5)
Xtr= r * Sin(Olinha + S - Otr) Xtre= re * Sin(Olinha + S - Otre) Xtrb = rb * Sin(Olinha + S - Otrb) Xtri =ri * Sin(Olinha + S - Otri)
Xtrm6 =rm6 * Sin(Olinha + S - Otrm6) Xtrm7 =rm7 * Sin(Olinha + S - Otrm7) Xtrm9 =rm9 * Sin(Olinha + S - Otrm9)
Ytr = r * Cos(Olinha + S - Otr) Ytre = re * Cos(Olinha + S - Otre) Ytrb = rb * Cos(Olinha + S - Otrb) Ytrm6 = rm6 * Cos(Olinha + S - Otrm6) Ytrm7 = rm7 * Cos(Olinha + S - Otrm7) Ytrm9 = rm9 * Cos(Olinha + S - Otrm9)
MsgBox ("Gerando modelo... Clique OK para continuar:")
Set part1 = partDocument1.Part Set bodies1 = part1.Bodies
Set body1 = bodies1.Item("PartBody") Set sketches1 = body1.Sketches
Set sketch1 = sketches1.Item("Sketch.1") part1.InWorkObject = sketch1
Set factory2D1 = sketch1.OpenEdition()
Set geometricElements1 = sketch1.GeometricElements Set circle2D1 = geometricElements1.Item("Circle.1") circle2D1.SetData 0.000000, 0.000000, 75.000000 Set circle2D2 = geometricElements1.Item("Circle.2") circle2D2.SetData 0.000000, 0.000000, 70.500000 Set circle2D3 = geometricElements1.Item("Circle.3") circle2D3.SetData 0.000000, 0.000000, 80.500000 Set circle2D4 = geometricElements1.Item("Circle.4") circle2D4.SetData 0.000000, 0.000000, 87.500000 Set constraints1 = sketch1.Constraints
Set constraint1 = constraints1.Item("rb") Set length1 = constraint1.Dimension length1.Value = rb
Set constraint2 = constraints1.Item("ri") Set length2 = constraint2.Dimension length2.Value = ri
Set constraint3 = constraints1.Item("r") Set length3 = constraint3.Dimension length3.Value = r
Set constraint4 = constraints1.Item("re") Set length4 = constraint4.Dimension length4.Value = re
controlPoint2D2.SetData 6.300000, 80.253100
Set controlPoint2D3 = spline2D1.GetItem("CtrlPoint.2") controlPoint2D3.SetData 4.800000, 84.000000
Set controlPoint2D4 = spline2D1.GetItem("CtrlPoint.1") controlPoint2D4.SetData 2.800000, 87.455189
Set point2D1 = geometricElements1.Item("Point.138") point2D1.SetData 2.800000, 87.455189
Set point2D2 = geometricElements1.Item("Point.285") point2D2.SetData 6.907722, 76.816909
Set spline2D2 = geometricElements1.Item("Spline.2") Set controlPoint2D5 = spline2D2.GetItem("CtrlPoint.3") controlPoint2D5.SetData 9.000000, 69.923172
Set controlPoint2D6 = spline2D2.GetItem("CtrlPoint.6") controlPoint2D6.SetData 6.300000, 73.500000
Set controlPoint2D7 = spline2D2.GetItem("CtrlPoint.1") controlPoint2D7.SetData 7.000000, 77.000000
Set point2D3 = geometricElements1.Item("Point.260") point2D3.SetData 9.000000, 69.923172
Set point2D4 = geometricElements1.Item("Point.5") point2D4.SetData 189.306985, 1222.848726
Set line2D1 = geometricElements1.Item("Line.3")
line2D1.SetData 0.000000, 0.000000, 0.152986, 0.988228
Set constraint5 = constraints1.Item("AZ") constraint5.AngleSector = catCstAngleSector1 Set angle1 = constraint5.Dimension
angle1.Value = AZ
Set point2D5 = geometricElements1.Item("Point.158") point2D5.SetData 0.000000, 87.500000
Set circle2D5 = geometricElements1.Item("Circle.5") circle2D5.SetData 0.000000, 0.000000, 87.500000
Set point2D6 = geometricElements1.Item("Point.248") point2D6.SetData 10.785501, 69.670101
Set line2D2 = geometricElements1.Item("Line.4")
line2D2.SetData 0.000000, 0.000000, 0.152986, 0.988228
Set constraint6 = constraints1.Item("Xpre") Set length5 = constraint6.Dimension
length5.Value = Xpre
Set constraint7 = constraints1.Item("Xprm5") Set length6 = constraint7.Dimension
length6.Value = Xprm5
Set constraint8 = constraints1.Item("Xpr") Set length7 = constraint8.Dimension length7.Value = Xpr
Set constraint9 = constraints1.Item("Xtre") Set length8 = constraint9.Dimension length8.Value = Xtre
Set constraint10 = constraints1.Item("Xtri") Set length9 = constraint10.Dimension length9.Value = Xtri
Set constraint11 = constraints1.Item("Yprm5") Set length10 = constraint11.Dimension
length10.Value = Yprm5
Set constraint12 = constraints1.Item("Xtrb") Set length11 = constraint12.Dimension length11.Value = Xtrb
Set constraint13 = constraints1.Item("Ytrb") Set length12 = constraint13.Dimension
point2D7.SetData 0.000000, 87.500000
Set circle2D6 = geometricElements1.Item("Circle.12") circle2D6.SetData 0.000000, 0.000000, 70.500000 Set point2D8 = geometricElements1.Item("Point.279") point2D8.SetData 0.000000, 87.500000
Set point2D9 = geometricElements1.Item("Point.280") point2D9.SetData -2.800000, 87.455189
Set circle2D7 = geometricElements1.Item("Circle.18") circle2D7.SetData 0.000000, 0.000000, 87.500000 Set point2D10 = geometricElements1.Item("Point.282") point2D10.SetData -9.000000, 69.923172
Set point2D11 = geometricElements1.Item("Point.283") point2D11.SetData -10.785501, 69.670101
Set circle2D8 = geometricElements1.Item("Circle.19") circle2D8.SetData 0.000000, 0.000000, 70.500000 Set line2D3 = geometricElements1.Item("Line.8")
line2D3.SetData 0.000000, 0.000000, -0.152986, 0.988228
Set constraint14 = constraints1.Item("Xprb") Set length13 = constraint14.Dimension length13.Value = Xprb
Set constraint15 = constraints1.Item("Ytre") Set length14 = constraint15.Dimension length14.Value = Ytre
Set point2D12 = geometricElements1.Item("Point.373") point2D12.SetData -9.000000, 69.923172
Set point2D13 = geometricElements1.Item("Point.374") point2D13.SetData -6.907722, 76.816909
Set spline2D3 = geometricElements1.Item("Spline.11") Set controlPoint2D8 = spline2D3.GetItem("CtrlPoint.7")
controlPoint2D8.SetData -9.000000, 69.923172
Set controlPoint2D9 = spline2D3.GetItem("CtrlPoint.6") controlPoint2D9.SetData -6.300000, 73.500000
Set controlPoint2D10 = spline2D3.GetItem("CtrlPoint.1") controlPoint2D10.SetData -7.000000, 77.000000
Set point2D14 = geometricElements1.Item("Point.375") point2D14.SetData -2.800000, 87.455189
Set spline2D4 = geometricElements1.Item("Spline.12") Set controlPoint2D11 = spline2D4.GetItem("CtrlPoint.4") controlPoint2D11.SetData -6.900000, 74.681926
Set controlPoint2D12 = spline2D4.GetItem("CtrlPoint.3") controlPoint2D12.SetData -6.300000, 80.253100
Set controlPoint2D13 = spline2D4.GetItem("CtrlPoint.2") controlPoint2D13.SetData -4.800000, 84.000000
Set controlPoint2D14 = spline2D4.GetItem("CtrlPoint.1") controlPoint2D14.SetData -2.800000, 87.455189
sketch1.CloseEdition
Set shapes1 = body1.Shapes
Set circPattern1 = shapes1.Item("CircPattern.1") part1.InWorkObject = circPattern1
part1.Update
Set partDocument1 = CATIA.ActiveDocument Set part1 = partDocument1.Part
Set parameters1 = part1.Parameters
Set length1 = parameters1.Item("Engrenagem_Evolvente_Trocoide_curva\PartBody\EdgeFillet.1\CstEdgeRibbo n.1\Radius") length1.Value = Rd part1.Update
Set pad1 = shapes1.Item("Pad.1") Set limit1 = pad1.FirstLimit Set length15 = limit1.Dimension
circPattern1.CircularPatternParameters = catCompleteCrown Set angularRepartition1 = circPattern1.AngularRepartition Set intParam1 = angularRepartition1.InstancesCount intParam1.Value = Z
part1.Update
Set specsAndGeomWindow1 = CATIA.ActiveWindow Set viewer3D1 = specsAndGeomWindow1.ActiveViewer Set viewpoint3D1 = viewer3D1.Viewpoint3D
viewer3D1.Reframe
Set viewpoint3D1 = viewer3D1.Viewpoint3D
end if