Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Veja este projeto no meu site para ver uma simulação de circuito e um vídeo!
A levitação acústica é possível pelo fato de o som se comportar como uma onda. Quando duas ondas sonoras se cruzam, elas podem interferir uma na outra de forma construtiva ou destrutiva. (É assim que os fones de ouvido com cancelamento de ruído funcionam)
Este projeto usa um sensor de distância ultrassônico para criar um efeito de levitação. Isso funciona criando "bolsões" onde duas ondas sonoras opostas interferem uma na outra. Quando um objeto é colocado no bolso, ele permanece lá, aparentemente pairando no lugar.
Materiais necessários:
- Placa Arduino:
- H-bridge:
- Sensor de distância:
- Breadboard:
- Fios de jumpers:
- Diodo:
- Capacitores (talvez):
Projeto original da Make Magazine de Ulrich Schmerold.
Etapa 1: Obtenha transmissores ultrassônicos
Você precisará sacrificar um sensor de distância para esta etapa (não se preocupe, eles são relativamente baratos):
- Desolder e remover ambos os transmissores da placa
- Remova e salve a tela de malha de um
- Soldar os fios para ambos os transmissores
Etapa 2: Criar Circuito
Crie o circuito acima e observe o seguinte:
- Você pode não precisar necessariamente incluir os dois capacitores 100nF. (apenas se a sua placa, por algum motivo, não for capaz de lidar com o circuito e continuar desligando-se)
- A bateria de 9 V é um substituto para qualquer fonte de alimentação DC - a minha funcionou bem com uma bateria LiPo de 7,5 V
Etapa 3: Código
Faça upload deste código para o seu Arduino:
// código original de:
byte TP = 0b10101010; // Todas as outras portas recebem o sinal invertido void setup () {DDRC = 0b11111111; // Definir todas as portas analógicas como saídas // Inicializar Timer1 noInterrupts (); // Desabilita interrupções TCCR1A = 0; TCCR1B = 0; TCNT1 = 0; OCR1A = 200; // Define o registro de comparação (16MHz / 200 = onda quadrada de 80kHz -> onda completa de 40kHz) TCCR1B | = (1 << WGM12); // Modo CTC TCCR1B | = (1 <sem pré-escalonamento TIMSK1 | = (1 << OCIE1A); // Habilitar interrupções de interrupção de temporizador de comparação (); // Habilitar interrupções} ISR (TIMER1_COMPA_vect) {PORTC = TP; // Enviar o valor de TP para as saídas TP = ~ TP; // Inverta TP para a próxima execução} void loop () {// Não há mais nada a fazer aqui:)}
Etapa 4: montar transmissores e calibrar
Você realmente pode usar qualquer coisa para fazer isso, mas acabei usando um conjunto de mãos que ajudam (compre algumas aqui:
- Comece posicionando os transmissores cerca de 3/4 "de distância
- Pegue um pequeno pedaço de isopor com cerca da metade do tamanho de uma ervilha (não precisa ser redondo)
- Coloque o isopor na tela de malha da etapa 1
- Usando uma pinça ou um alicate, posicione-o entre os dois transmissores (ele deve começar a balançar quando você chegar perto)
- Mova os transmissores (para mais perto e mais longe) até que o isopor fique parado
Etapa 5: solução de problemas
Levei cerca de quinze minutos para fazê-lo funcionar da primeira vez, mas depois foi muito fácil colocá-lo em funcionamento novamente. Aqui estão algumas coisas que você pode tentar se não funcionar a princípio:
- Certifique-se de conectar tudo corretamente
- Aumente a tensão para a ponte H (bateria diferente)
- Pegue um pedaço menor de isopor
- Experimente uma posição diferente para os transmissores
- Tente adicionar os capacitores (se ainda não o fez)
- Se ainda não funcionar, talvez algo esteja quebrado: tente um conjunto diferente de transmissores ou uma nova bateria.