Como Calcular as Grandezas da 1ª Lei de Ohm com Python

0
734

Georg Simon Ohm foi um físico e matemático alemão, nascido em 1787. Ele é conhecido por sua lei sobre a relação entre corrente, tensão e resistência elétricas, conhecida como 1ª Lei de Ohm.

Georg Simon Ohm
Georg Simon Ohm. Fonte: https://portaldaeletricaoficial.com/a-vida-de-george-simon-ohm/

Esta lei é amplamente utilizada em eletrônica e engenharia elétrica e é uma base importante para a compreensão da eletricidade. Ohm passou a maior parte de sua vida ensinando e pesquisando, e sua contribuição tem sido valorizada por gerações de estudantes e profissionais da área elétrica.

📖 O enunciado da 1ª Lei de Ohm é o seguinte:

“A corrente elétrica que flui através de um condutor é diretamente proporcional à diferença de potencial (tensão) aplicada a ele e inversamente proporcional à sua resistência”.

A fórmula que representa a primeira lei de Ohm é:

V = I x R

Onde V é a tensão elétrica (em volts, V), I é a corrente elétrica (em ampères, A) e R é a resistência elétrica (em ohms, Ω).

A partir da equação V = IR, é possível derivar duas outras fórmulas importantes:

    • I = V / R (corrente elétrica é igual a tensão dividida pela resistência)
    • R = V / I (resistência elétrica é igual a tensão dividida pela corrente)

Resumindo:

Fórmulas derivadas da 1ª Lei de Ohm
Fórmulas derivadas da 1ª Lei de Ohm. Fonte: http://paginapessoal.utfpr.edu.br/ofuchi/

Programando…

A partir de duas grandezas conhecidas é possível calcular a terceira grandeza desconhecida da 1ª Lei de Ohm.

🐍 Programa em Python:

Saída:

Explicando

Este algoritmo feito em Python é uma implementação da Lei de Ohm, que relaciona as grandezas elétricas tensão (V), corrente (A) e resistência (Ω). O objetivo do programa é calcular uma das grandezas, caso as outras duas já sejam conhecidas. Para isso, inicialmente, a biblioteca math (linha 1) é importada no código.

A função calcular_grandeza (linha 3) recebe como argumento a letra que representa a grandeza elétrica desconhecida (desconhecida), que pode ser tensão (V), corrente (I) ou resistência (R). Dentro da função, há três estruturas if aninhadas, cada uma destinada a calcular uma das três grandezas elétricas:

    • Se a letra for 'V', linha 4, a corrente (corrente) e a resistência (resistencia) são pedidas ao usuário via comando input. Em seguida, a tensão é calculada como o produto da corrente pela resistência, como descrito pela Lei de Ohm. O resultado e a unidade de medida da tensão (V) são então retornados pela função.
    • Se a letra for 'I', linha 8, a tensão (tensao) e a resistência (resistencia) são pedidas ao usuário via comando input. Em seguida, a corrente é calculada como o quociente entre a tensão e a resistência, como descrito pela Lei de Ohm. O resultado e a unidade de medida da corrente (A) são então retornados pela função.
    • Se a letra for 'R', linha 12, a tensão (tensao) e a corrente (corrente) são pedidas ao usuário via comando input. Em seguida, a resistência é calculada como o quociente entre a tensão e a corrente, como descrito pela Lei de Ohm. O resultado e a unidade de medida de resistência (Ω) são então retornados pela função.
    • Se a grandeza desconhecida fornecida pelo usuário for diferente de ‘V’, ‘I’ ou ‘R’, a função calcular_grandeza retorna NaN e uma string vazia, linha 17, indicando que a grandeza fornecida é inválida. Na seção subsequente do código, a verificação é feita usando a função math.isnan para verificar se o resultado é NaN, e se for, a mensagem "{} é inválido!" é exibida (linha 22).

Na linha 19 é solicitado para o usuário informar a grandeza desconhecida que ele deseja calcular, através da função input. O resultado da função input é convertido para maiúsculo com o método upper para evitar problemas de comparação com o uso de letras maiúsculas ou minúsculas na entrada do usuário. O resultado da conversão é atribuído à variável desconhecida.

Na linha 20, a função calcular_grandeza é chamada e a variável desconhecida é passada como parâmetro, que representa a grandeza desconhecida inserida pelo usuário. O resultado da função é atribuído a duas variáveis, resultado e unidade. O valor retornado pela função calcular_grandeza é uma tupla (dois valorees), que representa o valor da grandeza calculada e sua unidade.

Por fim, uma estrutura de condição (linhas 21 a 24) na qual é verificado se o valor de resultado é válido ou não. Isso é feito com a função math.isnan, que verifica se o valor passado é NaN (Not a Number), ou seja, se não é um número válido.

    • Se o resultado for inválido, imprimimos a mensagem "{} é inválido!".format(desconhecida), onde desconhecida é a grandeza informada pelo usuário.
    • Se o resultado for válido, imprimimos a mensagem "{} = {:.2f} {}".format(desconhecida, resultado, unidade), onde desconhecida é a grandeza informada pelo usuário, resultado é o valor calculado da grandeza e unidade é a unidade do resultado.

A string formatada (linha 24) "{:.2f} {}".format(desconhecida, resultado, unidade) contém um formato numérico com ponto flutuante, .2f, que limita o número de casas decimais após o ponto para 2 casas. Isso significa que a variável resultado será exibida com apenas 2 casas decimais. Por exemplo, se o valor de resultado for 123.4567, ele será exibido como 123.46. E a variável unidade é adicionada ao final da mensagem.

*Atualizado em 26 de julho de 2023

Estude a Bíblia!
Subscribe
Notify of
guest
0 Comentários
Inline Feedbacks
View all comments