Existem práticas “melhores” ou pelo menos “comuns” para lidar com permissões no código OpenSCAD?

8

Estou projetando alguns mecanismos com o OpenSCAD, e um dos parâmetros que precisam ser ajustados entre impressoras / filamentos é a permissão entre peças que precisam ser montadas juntas (por exemplo, se eu quiser um "pino de 5 mm de diâmetro" para prender duas peças) juntos, quanto maior que 5 mm os furos / quanto menor que 5 mm o pino precisará ter).

Atualmente, eu abordo o problema definindo uma variável global allowancee manualmente usando-a no código, algo como:

module pin(radius) {
    cylinder(r = radius + allowance)
}

module hole(radius) {
    cylinder(r = radius - allowance)
}

Porém, como não tenho experiência no mundo real com design, pergunto-me se existem práticas recomendadas comuns ou de codificação para levar em consideração as permissões ao projetar peças como, por exemplo:

  • módulos específicos a serem utilizados,
  • nomes convencionais para variáveis
  • técnicas específicas a serem usadas (dimensionamento? vetores?)
  • convenções (como usar apenas tolerâncias no fixador, não no objeto fixado)
  • ...?

Para esclarecer: não estou procurando conselhos sobre como planejar as dimensões dos meus projetos. Em vez disso, estou procurando conselhos sobre como organizar o código OpenSCAD que os gera.

Mac
fonte
11
Suspeito que o OpenSCAD seja um nicho demais para ter essas convenções. O que você está fazendo é muito semelhante às minhas próprias práticas.
Mick

Respostas:

5

Isso ajuda a entender os diferentes aspectos das dimensões, para que você possa usar a terminologia corretamente. Isso o ajudará a definir suas variáveis ​​no OpenSCAD com nomes corretos. (Tolerância é o termo errado a ser usado.) E depois de ter nomes corretos, você entenderá como especificar as dimensões no OpenSCAD.

  • Tolerância é a quantidade de desvio ou variação aleatória permitida para uma determinada dimensão.
  • A provisão é uma diferença planejada entre um valor nominal ou de referência e um valor exato.
  • A folga é o espaço intencional entre duas partes.
  • Interferência é a sobreposição intencional entre duas partes.

Outros dois termos

  • Precisão é a variação dimensional máxima entre as peças. Uma máquina não pode produzir peças com uma tolerância mais rígida que sua precisão.
  • Precisão é o tamanho das etapas que sua máquina é capaz. Muitas vezes é confundido com precisão.

No seu caso, você precisa definir o subsídio para criar a liberação que deseja.

Para projetar seus pinos de 5 mm e orifício de 5 mm, você precisa entender a precisão da sua máquina. A impressora pode imprimir o pino maior que 5 mm ou menor que 5 mm. Ou pode imprimir o furo maior que 5 mm ou menor que 5 mm. Você precisará imprimir alguns pinos e furos e medir as diferenças entre o que você definiu e o que imprimiu. A diferença entre as maiores e as menores medidas que você faz é a precisão da sua máquina. E não se esqueça de verificar a precisão nas suas dimensões X, Y e Z; sua impressora pode ter uma diferença entre eles que afetaria a redondeza das peças.

Digamos que a precisão medida da sua impressora seja de ± 0,2 mm.

Então, passamos para a liberação. Qual é o espaço mínimo entre as peças que você está procurando e qual é o máximo que você pode aceitar?

Digamos que você queira uma folga de pelo menos 0,2 mm entre o pino e o orifício, mas não mais que 1,0 mm. Como sua precisão é de ± 0,2 mm, seu pino será de 5,0 ± 0,2 mm, portanto o furo deve ser de 5,6 mm ± 0,2 mm. A condição de tolerância mínima seria um orifício de tamanho mínimo (5,4 mm) e um pino de tamanho máximo (5,2 mm); a tolerância máxima seria um orifício de tamanho máximo (5,8 mm) e um pino de tamanho mínimo (4,8 mm).

Observe que uma folga de 1,0 mm pode ser muito superficial para sua aplicação. Você pode aumentar as tolerâncias para 0,05 mm, a fim de reduzir a folga. Mas se a sua impressora não puder produzir uma peça que atenda às tolerâncias especificadas, você precisará encontrar uma maneira diferente de fabricar ou terminar as peças.

John Deters
fonte
Obrigado por me fornecer o vocabulário adequado em inglês para me comunicar com outros designers de maneira eficaz! Eu atualizei minha pergunta de acordo. No entanto, minha pergunta é especificamente sobre a organização do código OpenSCAD , não sobre a teoria e a prática das permissões (que eu já entendi, embora ignorando os termos apropriados em inglês). :) Posso sugerir que você crie uma pergunta no estilo wiki (opção ao editar a pergunta) como "Quais são as diferenças entre permissão e tolerância?" e mover seu texto para lá? Esta é uma informação muito útil, mas infelizmente não é uma resposta para minha pergunta!
mac
... e é claro que eu seria o primeiro a votar isso ... deixe-me saber nos comentários se você estiver por perto! :)
mac
2

Não tenho conhecimento de um padrão no Openscad, mas posso compartilhar o que fiz no passado.

cutoutActualDiameter = 10;
cutoutDiameterClearance = 0.1;
cutoutDiameter = cutoutActualDiameter + cutoutDiameterClearance;

Sei que isso é detalhado, mas infelizmente, na minha experiência, é uma necessidade se você deseja que seu código possa ser mantido no Openscad. O benefício disso é que, até que você precise de uma liberação adicional, você pode simplesmente usar a variável cutoutDiametere, se e quando precisar de uma liberação adicional, poderá renomear essa variável e não precisar alterar nenhum código em que a variável está. consumido.

Gostaria de ouvir como os outros conseguem isso.

Nick Dancer
fonte
11
Então, você está dizendo que, em vez de usar uma variável para todas as permissões, você cria uma variável ad-hoc para cada dimensão de sua parte? Caso contrário, você pode esclarecer qual é a diferença entre sua abordagem e a descrita na própria pergunta? Obrigado! :)
mac
@mac está correto. Você ainda poderia usar esse padrão com uma variável de tolerância mais global e teria a flexibilidade de usá-lo onde puder ou ser tão granular quanto necessário. Algumas coisas podem precisar de um ajuste apertado. Outros deveriam ter alguma doação.
Nick Dancer
-2

Bem, as tolerâncias dependerão do material a ser usado para a fabricação da peça necessária e também para onde a peça vai e se encaixa. Lembre-se de que todas as peças precisam de alguma folga para se encaixar corretamente.

Alguns anos atrás (10 anos) eu estava trabalhando como Engenheiro da Qualidade e alguns engenheiros de projeto estavam reclamando que um pino Dupont não estava encaixado na placa de circuito impresso, então eles me disseram que eu precisava forçar a fabricação de placas de circuito impresso a aumentar os furos para uma tolerância mais alta. O que eu tive que perguntar primeiro o tamanho do pino e me disse 0,70 mm e tamanho do orifício 0,80 e máximo 0,90 - hmmm e tamanho máximo do pino? Eu perguntei, e eles me disseram orgulhosamente 0,78 mm para que a peça caiba perfeitamente. - Ah, então um pino quadrado de 0,78 mm cabe em um furo de 0,9 mm, mas e a dimensão diagonal? se o pino na dimensão mais alta estiver próximo de 1,2 mm.

Imagine o que aconteceu depois, a engenharia muda e modifica outros projetos devido a tolerâncias inadequadas. o software pro-engineer não conseguiu calcular o que os designers precisavam.

O material possui retração, deformação e outras condições necessárias para conhecer como maleabilidade e dureza, e alguns desses dados estão no material de especificação ou na especificação de peça.

Fernando Baltazar
fonte
11
Isso não responde à pergunta de forma alguma.
tjb1
@ tjb1 Isso faz você pensar em considerar tolerâncias, mesmo se estiver usando o melhor software cad.
Fernando Baltazar
11
A questão é perguntar como aplicar tolerâncias dentro do OpenSCAD durante a codificação, não como as tolerâncias se aplicam a uma parte real.
tjb1
@ tjb1 Então, o usuário nunca planeja usar peças reais?
Fernando Baltazar
11
Independentemente de tolerâncias ou tolerâncias, a questão é sobre como aplicá-las no código dentro do OpenSCAD que está gerando o modelo. Consulte os pontos principais da questão. O StackExchange não é um fórum e sua resposta é basicamente uma história sobre um trabalho anterior, mas não uma resposta para a pergunta.
precisa saber é o seguinte