A lâmpada "buraco negro"



Trago à sua atenção uma lâmpada, que ao mesmo tempo é um auxílio visual "um buraco negro no espaço bidimensional".

A teoria geral da relatividade de Einstein diz que objetos com massa distorcem o tecido do espaço-tempo. Os buracos negros são pontos de densidade tão grande que o espaço-tempo neles é distorcido o suficiente para que nem a radiação nem a matéria possam escapar.

Para recriar esse fenômeno, peguei um pedaço de elastano preto para imitar o "tecido do espaço-tempo" e em torno dele coloquei um "horizonte de eventos" - um anel de LEDs brancos; apenas um pouco mais perto do "buraco negro" - e a luz não sai. Quanto mais você mantém a lâmpada acesa, mais o buraco negro cresce, absorvendo matéria e energia. Em nosso modelo, para simular isso, o elastano puxa uma linha trançada, passa por um tubo de cobre e é acionado por um motor elétrico localizado na base. O controlador de brilho afeta simultaneamente a velocidade da tensão: quanto mais luz e matéria entra no buraco negro por unidade de tempo, mais rápido ele cresce e vice-versa. Se a lâmpada estiver desligada, o motor gira na direção oposta, aliviando a tensão, que é análoga à evaporação de um buraco negro devido à radiação Hawking.

GIF ~ 11 MB

Essa representação artística de um buraco negro é útil na escultura cinética com mecânica primitiva? Provavelmente sim, na mesma medida que a história em quadrinhos "Tim and Beat" sobre os homenzinhos no computador. Ou modelagem de qualquer fenômeno físico com circuitos em amplificadores operacionais. Se você quiser uma história mais séria, embora simplificada, sobre buracos negros, veja este vídeo no canal do YouTube "Em suma".

Se você deseja montar a mesma lâmpada, prepare:

- tecido elástico preto como elastano (também conhecido como spandex, lycra, etc.)
- um tubo de cobre de meia polegada (um de plástico também é adequado se você não for um punk steampunk) e três acessórios de canto de 90 graus
- base de madeira
- linha de pesca trançada
- lata de spray com tinta preta
- Arduino Nano
- Fonte de alimentação de 9 volts
- Fita LED branca feita em casa, diferente da faixa padrão em que todos os LEDs nela são simplesmente conectados em paralelo
- módulo com duas pontes H com proteção contra corrente L9110
- motor de passo 28BYJ
- interruptor de alavanca
- resistor variável
- fios, solda, fluxo, tábua de pão
- ferramentas para instalação de rádio e madeira

Serra três pedaços de tubo: dois de 330 mm e um de 368 mm.



Se desejar, você pode polir assim:



Faça três orifícios de 16 mm: dois em um ângulo de cerca de 25 graus da vertical - para os tubos aos quais você anexa o anel de LED e, afastando-se 25 mm deles - o orifício central do tubo pelo qual a linha de pesca será passada.

Faça mais dois furos dos diâmetros correspondentes para a chave seletora e o resistor variável. Outro furo mostrado na foto do dispositivo acabado no final do artigo foi perfurado erroneamente, não é necessário repeti-lo.

Imprima dois conjuntos de meias argolas com um filamento preto e cole cada um deles. Para imprimir o anel inteiro, o autor não tinha espaço suficiente na mesa da impressora.

Corte um quadrado de elastano e coloque em um anel fino. Faça orifícios no tecido para 10 parafusos e continue mantendo-o levemente esticado, cubra com um anel grosso e conecte o “sanduíche” resultante com parafusos. Corte o elastano que sobrou.

Amarre uma conta com uma linha de pesca trançada no centro da peça de elastano.



Cole a faixa de LED ao redor do perímetro do anel. Prenda o anel aos tubos curtos através de conexões. Solde os fios à fita, marcando-os de forma que a polaridade fique nítida, ou pegando fios coloridos, e passe por um dos canos.

Pinte a base de preto. Coloque a conexão no tubo longo. Instale todos os tubos, a chave seletora e o resistor variável nos orifícios fornecidos. Passe a linha pelo tubo do meio instalado no meio.

Conecte os componentes de acordo com o diagrama em anexo.



O motor de passo 28BYJ possui cinco fios, mas um deles - vermelho - não precisa ser conectado a lugar algum. Conecte os fios laranja e rosa à saída do módulo de ponte H do Motor B e os fios amarelo e azul à saída do motor A. Conecte o módulo ao Arduino assim:

B1A a D11
B1B a D10
A1A a D9
A1B a D8

Conecte a faixa de LEDs (lembre-se, é feita em casa e todos os LEDs são simplesmente conectados em paralelo) através de um resistor de 100 ohms entre a saída D3 (ou outra saída com PWM, você pode selecioná-la no esboço) e o fio comum. Conecte a chave seletora de forma que conecte um fio comum através do resistor de 2,2 kOhm à entrada D2 na posição inferior e a saída do estabilizador de cinco volts na posição superior. É interessante por que o autor não gosta tanto de resistores de pull-up, isso permitiria o uso de interruptores sem contatos normalmente fechados. Conecte um dos terminais laterais do resistor variável ao fio comum, o outro à saída do estabilizador de cinco volts e o terminal do meio à entrada A0.

Imprima uma polia a partir do mesmo conjunto de arquivos STL, coloque-a no eixo do motor, prenda a linha de pesca. Aconteceu algo como o mostrado na figura.



Preencha o esboço:

//L9110 ->   28BYJ int A1A = 8; int A2A = 9; int B1B = 10; int B2B = 11; int PotPin = 0; //  A0 int SwitchPin = 2; int LEDring = 3; //   - int waitTime; //    ( ) int PotVal; //    int SwitchVal; int intensity; //      float pulleyRadius = 1.4; //    float maxStringContraction = 7.0; // ,     ,   float stepsPerRevolution = 2048.0; //     float Pi = 3.14159; float circumference = 2.0 * Pi * pulleyRadius; float MaxRevs = maxStringContraction / circumference; //    float MaxSteps = MaxRevs * stepsPerRevolution; //       int StepLimit = MaxSteps; //    int StepCount = 0; void setup() { Serial.begin(9600); //Serial.println(circumference); //Serial.println(MaxRevs); //Serial.println(MaxSteps); //Serial.println(StepLimit); pinMode(SwitchPin, INPUT); pinMode(LEDring, OUTPUT); pinMode(A1A, OUTPUT); pinMode(A2A, OUTPUT); pinMode(B1B, OUTPUT); pinMode(B2B, OUTPUT); } void step1() { digitalWrite(A1A, LOW); digitalWrite(A2A, HIGH); digitalWrite(B1B, HIGH); digitalWrite(B2B, LOW); delay(5); } void step2() { digitalWrite(A1A, LOW); digitalWrite(A2A, HIGH); digitalWrite(B1B, LOW); digitalWrite(B2B, HIGH); delay(5); } void step3() { digitalWrite(A1A, HIGH); digitalWrite(A2A, LOW); digitalWrite(B1B, LOW); digitalWrite(B2B, HIGH); delay(5); } void step4() { digitalWrite(A1A, HIGH); digitalWrite(A2A, LOW); digitalWrite(B1B, HIGH); digitalWrite(B2B, LOW); delay(5); } void Stop() { digitalWrite(A1A, LOW); digitalWrite(A2A, LOW); digitalWrite(B1B, LOW); digitalWrite(B2B, LOW); delay(5); } void BHgrowth() { analogWrite(LEDring, intensity); if (StepCount < StepLimit) { //   step1(); step2(); step3(); step4(); StepCount += 1; } Stop(); } void HawkingRadiation() { analogWrite(LEDring, 0); if (StepCount > 0) { step3(); step2(); step1(); step4(); StepCount -= 1; } Stop(); } void loop() { PotVal = analogRead(PotVal); intensity = map(PotVal, 0, 1024, 0, 254); SwitchVal = digitalRead(SwitchPin); if (SwitchVal == 1) { BHgrowth(); waitTime = 255 - intensity; //  ,   ,   if (waitTime < 1){ waitTime = 1; } } else { HawkingRadiation(); waitTime = 255; } delay(waitTime); Serial.println(waitTime); Serial.println(SwitchVal); } 


Feito, você pode usá-lo!

Source: https://habr.com/ru/post/pt411915/


All Articles