Enviado em 01/11/2020 - 11:29h
Comecei recentemente no python, estou tentando transcrever meu código em matlab para python, porém ainda não me familiarizei totalmente com questões de identação, agradeço se puderem me ajudar. No código a baixo não está entrando no
M = float(input("Digite o valor do modulo: "))
print("\n")
print('Para o passo fino, recomenda-se um Ângulo de Pressão de 20°\n')
print('Para o passo grosso, recomenda-se um Ângulo de Pressão de 20° a 25°\n')
AngPres = input ('Digite o valor do Angulo de Pressão: ')
print('\nDigite o 0 para Utilizar como entrada os Números de Dentes\n')
entrada = input('Digite o 1 para Utilizar como entrada o Diâmetro Primitivo\n')
armazenar = open('_resultado.txt', "w")
armazenar.write('------------------Cálculo para Engrenagem de Dente Reto-------------\n')
armazenar.write('\n')
armazenar.write(' Característica Valor\n')
armazenar.write('\n')
"-----------------------Dente Padronizado------------------------"
while True:
if M >= 1.25: "Passo Grosso"
"---------------Tabela do Livro ---------------------"
Adendo = 1*M
Dedendo =1.25*M
ProfundidadeDeTrabalho = 2*M
Profundidade = 2.25*M
EspessuraDoDente = 1.57*M
RaioDeArredondamento = 0.30*M
FolgaMinima = 0.25*M
MinimaEspessuraDoTopo = 0.25*M
AlturaDente = Adendo+Dedendo
"---------------------------------------------------"
with open('Passo_Grosso.txt','w') as armazenar:
armazenar.write('---------------------Passo Grosso-----------------\n')
armazenar.write('---------------------Especificações AGMA-------------\n')
armazenar.write(' Adendo(mm) = ')
armazenar.write(str(Adendo))
armazenar.write('\n')
armazenar.write(' Dedendo(mm) = ')
armazenar.write(str(Dedendo))
armazenar.write('\n')
armazenar.write(' Profundidade De Trabalho(mm) = ')
armazenar.write(str(ProfundidadeDeTrabalho))
armazenar.write('\n')
armazenar.write(' Profundidade(mm) = ')
armazenar.write(str(Profundidade))
armazenar.write('\n')
armazenar.write(' Espessura Do Dente(mm) = ')
armazenar.write(str(FolgaMinima))
armazenar.write('\n')
armazenar.write(' Raio De Arredondamento(mm) = ')
armazenar.write(str(RaioDeArredondamento))
armazenar.write('\n')
armazenar.write(' Minima Espessura Do Topo(mm) = ')
armazenar.write(str(MinimaEspessuraDoTopo))
armazenar.write('\n')
armazenar.write(' Altura Dente(mm) = ')
armazenar.write(str(AlturaDente))
armazenar.write('\n')
armazenar.write('---------------------------------------------------------\n')
armazenar.write('\n')
if M < 1.25: "Passo Fino"
"---------------Tabela do Livro ---------------------"
Adendo_pf = 1*M
Dedendo_pf = 1.40*M
ProfundidadeDeTrabalho_pf = 2*M
Profundidade_pf = 2.40*M
EspessuraDoDente_pf = 1.57*M
FolgaMinima_pf = 0.40*M
AlturaDente_pf = Adendo_pf+Dedendo_pf
"---------------------------------------------------"
with open('Passo_Fino.txt','w') as armazenar:
armazenar.write('---------------------Passo Fino-----------------\n')
armazenar.write('---------------------Especificações AGMA-----------------\n')
armazenar.write(' Adendo(mm) = ')
armazenar.write(str(Adendo_pf))
armazenar.write('\n')
armazenar.write(' Dedendo(mm) = ')
armazenar.write(str(Dedendo_pf))
armazenar.write('\n')
armazenar.write(' Profundidade De Trabalho(mm) = ')
armazenar.write(str(ProfundidadeDeTrabalho_pf))
armazenar.write('\n')
armazenar.write(' Profundidade(mm) = ')
armazenar.write(str(Profundidade_pf))
armazenar.write('\n')
armazenar.write(' Espessura Do Dente(mm) = ')
armazenar.write(str(EspessuraDoDente_pf))
armazenar.write('\n')
armazenar.write(' Folga Minima(mm) = ')
armazenar.write(str(FolgaMinima_pf))
armazenar.write('\n')
armazenar.write(' Altura Dente(mm) = ')
armazenar.write(str(AlturaDente_pf))
armazenar.write('\n')
armazenar.write('---------------------------------------------------------\n')
armazenar.write('\n')
armazenar.close()
"------------Diametro Primitivo ou N de Dentes----------"
if entrada == 0:
NDT1 = input('Digite o número de Dentes para a Engrenagem 1: \n')
NDT2 = input('Digite o número de Dentes para a Engrenagem 2: ')
if AngPres == 14.5:
if NDT1 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n')
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT1 = input('Digite o novo Número de Dentes para a Engrenagem 1: ')
d = 1
if NDT2 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT2 = input('Digite o novo Número de Dentes para a Engrenagem 2: ')
d = 1
if AngPres == 20:
if NDT1 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT1 = input('Digite o novo Número de Dentes para aEngrenagem 1: ')
d = 1
if NDT2 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT2 = input('Digite o novo Número de Dentes para aEngrenagem 2: ')
d = 1
if AngPres == 25:
if NDT1 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT1 = input('Digite o novo Número de Dentes para a Engrenagem 1: ')
d = 1
if NDT2 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('------------------Numero de dentes recomendados------------------\n')
print(' Angulo Preção No de Dentes\n')
print(' 14.5o = 37 \n');
print(' -----> 20o = 21 \n')
print(' -----> 25o = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
NDT2 = input('Digite o novo Número de Dentes para a Engrenagem 2: ')
d = 1
Dp1 = (M*NDT1)
Dp2 = (M*NDT2)
if entrada == 1:
Dp1 = input('Digite o Diâmetro primitivo da Engrenagem 1(mm):\n ')
Dp2 = input('Digite o Diâmetro primitivo da Engrenagem 2(mm):\n ')
NDT1 = (Dp1/M)
NDT2 = (Dp2/M)
if AngPres == 14.5:
if NDT1 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n')
print(' ---> 17,25 (mm) = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
Dp1 = input('Digite o novo Diâmetro primitivo para a Engrenagem 1(mm): ')
d = 1
if NDT2 <= 37:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n')
print(' ---> 17,25 (mm) = 14 \n')
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
Dp2 = input('Digite o novo Diâmetro primitivo para a Engrenagem 1(mm): ')
d = 1
if AngPres == 20:
if NDT1 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se simdigite [>> 0 <<]: \n')
if d == 0:
Dp1 = input('Digite o novo Diâmetro primitivo para aEngrenagem 1(mm): ')
d = 1
if NDT2 <= 21:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se simdigite [>> 0 <<]: \n')
if d == 0:
Dp2 = input('Digite o novo Diâmetro primitivo para aEngrenagem 1(mm): ')
d = 1
if AngPres == 25:
if NDT1 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se sim digite [>> 0 <<]: \n')
if d == 0:
Dp1 = input('Digite o novo Diâmetro primitivo para aEngrenagem 1(mm): ')
d = 1
if NDT2 <= 14:
print('Número de Dentes abaixo do recomendado\n')
print('----------Numero de dentes recomendados - DP------------------\n')
print(' Diametro Primitivo No de Dentes\n')
print(' 46,5 (mm) = 37 \n');
print(' ---> 26,25 (mm) = 21 \n');
print(' ---> 17,25 (mm) = 14 \n');
d = input('Deseja alterar o numero de dentes novamente ? se simdigite [>> 0 <<]: \n')
if d == 0:
Dp2 = input('Digite o novo Diâmetro primitivo para aEngrenagem 2(mm): ')
d = 1
NDT1 = (Dp1/M)
NDT2 = (Dp2/M)
## OBS: A PARTIR DAQUI NÃO TENHO CERTEZA DA IDENTAÇÃO, POIS NÃO SEI DIZER ONDE ESTÃO ESSAS PRÓXIMAS LINHAS DE COD, DENTRO DO LOOP WHILE?
print(armazenar, '\n');
print(armazenar, '----------------------Dados Gerais-------------------\n');
print(armazenar, ' Número de Dentes 1 =%f\n', NDT1);
print(armazenar, ' Número de Dentes 2 =%f\n', NDT2);
print(armazenar, ' Diâmetro Primitivo 1(mm) =%f\n', Dp1);
print(armazenar, ' Diâmetro Primitivo 2(mm) =%f\n', Dp2);
print(armazenar, ' Módulo(mm) =%f\n', M);
print(armazenar, ' Ângulo de Pressão(o) =%f\n', AngPres);
#clc##como dar esse clear no python?
#----------------Relação de Velocidade e Torque----------------
MV = (NDT1/NDT2)
MT = (NDT2/NDT1)
if MV > MT: #Relação de Transmissão
MG = MV
else:
MG = MT
#-------------------------Diametros-------------------------------
Dext1 = Dp1 + 2*M
Dext2 = Dp2 + 2*M
print(armazenar, '\n');
print(armazenar, '---------------------Diâmetros Externos-----------------\n');
print(armazenar, ' Diâmetro Externo 1(mm) =%f\n', Dext1);
print(armazenar, ' Diâmetro Externo 2(mm) =%f\n', Dext2);
#clc##como dar esse clear no python?
#---------------------Distância entre Eixos-----------------------
E = (Dp1 + Dp2)/2
print(armazenar, '\n');
print(armazenar, '------------------------Distância--------------------\n');
print(armazenar, ' Distância Entre Eixos(mm) =%f\n', E);
#clc##como dar esse clear no python?
#----------------------Passos------------------------
PassoCircular = (M*(math.pi))
PassodeBase = PassoCircular*math.cos(math.deg2rad(AngPres))
PassoDiametral = (math.pi)/PassoCircular
print(armazenar, '\n');
print(armazenar, '--------------------------Passos--------------------\n');
print(armazenar, ' Passo Circular(mm) =%f\n', PassoCircular);
print(armazenar, ' Passo de Base(mm) =%f\n', PassodeBase);
print(armazenar, ' Passo Diametral(1/mm) =%f\n', PassoDiametral);
#clc
#-----------------------Raios--------------------
r1 = Dp1/2
r2 = Dp2/2
print(armazenar, '\n');
print(armazenar, '---------------------Raios Primitivos-----------------\n');
print(armazenar, ' Raio Primitivo 1(mm) =%f\n', r1);
print(armazenar, ' Raio Primitivo 2(mm) =%f\n', r2);
#clc
#-----------------Razão de contato-------------------
ComprimentoDeAcao = (math.sqrt(((r1+Adendo)^2)-((r1*math.cos(math.deg2rad(AngPres)))^2)) +
math.sqrt(((r2+Adendo)^2)-((r2*math.cos(math.deg2rad(AngPres)))^2)))
(E*math.sin(math.deg2rad(AngPres)))
GraudeRecobrimento = ComprimentoDeAcao/PassodeBase
print(armazenar, '\n');
print(armazenar, '---------------------Razão de Contato-----------------\n');
print(armazenar, ' Comprimento De Ação(mm) =%f\n', ComprimentoDeAcao);
print(armazenar, ' Grau de Recobrimento =%f\n', GraudeRecobrimento);
#clc
#-------------------Jogo de Dentes----------------
j = input('Digite 0 se deseja calcular uma mudança no jogo de Dentes: \n')
if j == 0:
porcentagem = input('Digite a porcentagem que se deseja aumentar na distância entre centros: \n')
aumento = 1+(porcentagem/100)
AngPresNovo = math.rad2deg(math.acos(math.cos(math.deg2rad(AngPres))/aumento))
MudancaNoJogo1 = 43200*((porcentagem/100)(E))((math.tan(math.deg2rad(AngPresNovo)))/(math.pi*Dp1))
MudancaNoJogo2 = 43200*((porcentagem/100)(E))((math.tan(math.deg2rad(AngPresNovo)))/(math.pi*Dp2))
print(armazenar, '\n');
print(armazenar, '---------------------Jogo de Dentes------------------\n');
print(armazenar, ' Angulo de Pressão Novo(°) =%f\n', AngPresNovo);
print(armazenar, ' Mudança no Jogo 1(min de arco)=%f\n', MudancaNoJogo1);
print(armazenar, ' Mudança no Jogo 2(min de arco)=%f\n', MudancaNoJogo2);
#clc
#--------------------Torque-----------------------
b = input('Digite 0 para calcular o Torque: ')
if b == 0:
F = input('Digite a Força aplicada no Sistema (N): ')
Torque1 = F*r1
Torque2 = F*r2
ComponenteTangencial = Torque1/r1
ComponenteRadial = ComponenteTangencial*math.tan(math.deg2rad(AngPres))
ForcaResultante = ComponenteTangencial/math.cos(math.deg2rad(AngPres))
print(armazenar, '\n');
print(armazenar, '-------------------------Torque---------------------\n');
print(armazenar, ' Força Aplicada(N) =%f\n', F);
print(armazenar, ' Torque 1(N.mm) =%f\n', Torque1);
print(armazenar, ' Torque 2(N.mm) =%f\n', Torque2);
print(armazenar, ' Componente Tangencial(N) =%f\n', ComponenteTangencial);
print(armazenar, ' Componente Radial(N) =%f\n', ComponenteRadial);
print(armazenar, ' Força Resultante(N) =%f\n', ForcaResultante);
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Vou voltar moderar conteúdos de Dicas e Artigos (1)
SysAdmin ou DevOps: Qual curso inicial pra essa área? (3)
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta