Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Manufacturing Technology >> Processo de manufatura

Gerador de forma de onda arbitrária do Arduino Due

Componentes e suprimentos

Arduino Due
× 1

Sobre este projeto







Descrição geral





Isso agora funciona no Linux e também no Windows.


Freq. máx. da onda analógica:100 kHz. Frequência máxima de onda quadrada:42 MHz.

Ciclo de trabalho ajustável de praticamente 0% a 100%

Muito fácil de construir - consulte a instalação abaixo.

Este é um projeto de duas partes:a própria placa Arduino Due e uma GUI do controlador para ser usada em seu PC, embora a placa Arduino também possa ser usada sozinha usando potenciômetros, interruptores e LEDs.

Nenhum circuito é necessário, embora um circuito de proteção de saída opcional seja oferecido, o que deve proteger a placa Arduino de conectar acidentalmente as saídas a tensões de mais e menos 30 V ou mais. (talvez mais)

Usando a GUI do controlador em seu PC, ondas arbitrárias podem ser desenhadas, editadas, salvas, abertas e carregadas no Arduino Due, automaticamente conectado através da porta USB. Um arquivo de ajuda abrangente está incluído.

Um recurso de onda "escalonada" permite que qualquer número de passos nítidos (uma amostra) na onda seja facilmente produzido, se desejado. Além disso, a saída pode ser alternada para onda senoidal ou triângulo / dente de serra.

Além disso, uma onda quadrada é produzida simultaneamente, a qual pode ser sincronizada ou totalmente independente. As ondas podem ser controladas pela frequência ou período. O ciclo de trabalho pode ser definido de praticamente 0% a 100%. Ou a largura de pulso pode ser definida como constante. (dentro dos limites do período, é claro)

As novas configurações podem ser digitadas diretamente no teclado do PC ou no teclado do programa. Ou, pressionar "MODE" permite um ajuste deslizante.

Um modo exato está disponível para a onda analógica, o que evita as "etapas de frequência" normalmente associadas aos geradores de forma de onda de síntese digital direta (DDS). Isso torna possível uma frequência mais precisa, permitindo o acesso às frequências entre essas "etapas de frequência", porque a saída não é uma divisão da frequência do relógio do Arduino quando o modo exato está ativado.

Um recurso de varredura de frequência (log) para uma ou ambas as ondas está incluído, e há também um temporizador com saída Arduino positiva ou negativa.





Especificações


Onda analógica:

A resolução é de 12 bits com até 4096 pontos de passagem.

A faixa de frequência é:0,05 mHz (20.000 segundos) a 100 kHz.

Taxa de amostragem:(acima de 1kHz usando DMA) até 1,6MHz.

Taxa de amostragem:(até 1kHz) 400kHz.

Taxa de amostragem no modo exato:(qualquer frequência) 400kHz.

Largura mínima de pulso:(ciclo de meia onda)

A 0% do ciclo de trabalho:350 nanosegs (aprox.) Em qualquer freq.

Com ciclo de trabalho de 0,01%:até 2,5 - 25 microssegundos. (Aproximadamente.)

- se a frequência estiver acima de 1kHz E o modo exato ou sincronização estiver ativado,

- caso contrário, 350 nanosecs.

Onda quadrada:

A faixa de frequência é:0,05mHz (20.000 segundos) a 42MHz.

Largura mínima de pulso:

Sincronizado:[Freq:0,05mHz (20.000 segundos) a 100kHz]

No ciclo de trabalho de 0%:48 nanossegundos em qualquer freq.

No ciclo de trabalho de 0,01%:2,5 - 25 microssegundos. (Aproximadamente.)

Não sincronizado:[0,093mHz (10.737 segundos) a 42MHz]

12nS de 1,3kHz a 42MHz. (Usando PWM)

24nS de 650Hz a 1,29999kHz. (Usando PWM)

48nS de 325Hz a 649.99999Hz. (Usando PWM)

96nS de 163Hz a 324.99999Hz. (Usando PWM)

Abaixo de 163 Hz:(usando interrupção)

No ciclo de trabalho de 0%:96 nanossegundos.

No ciclo de trabalho de 0,01%:5 microssegundos.





Instalação


O programa GUI pois o seu PC é "portátil", portanto não precisa de instalação.

Para usuários do Windows, basta extrair o arquivo .zip para uma pasta de sua escolha e fazer um atalho para o arquivo .exe. Observação:o arquivo "DueAWGController-Win64.zip" se destina a sistemas de 64 bits, mas o arquivo 32.zip costuma funcionar de maneira mais confiável, pois tem java incorporado.

Para usuários do Linux, extraia o arquivo DueAWGController-LinuxXX.zip em uma pasta e, a seguir, clique duas vezes no arquivo DueAWGControllerLinux ou adicione-o ao menu do sistema.

Pode ser necessário instalar o OpenJDK 8 (java 8) para Debian, Ubuntu, etc:Na linha de comando (no Terminal), digite:sudo apt-get install openjdk-8-jre (versões mais recentes podem não funcionar).

Também pode ser necessário obter permissão para acessar o USB antes de se conectar ao Arduino. Digite:sudo usermod -a -G dialout $ USER

Também estão incluídos dois arquivos "arm" para Raspberry Pi etc, mas eles não foram testados. Por favor, deixe-me saber se eles funcionam.

O esboço do Arduino não precisa de bibliotecas especiais, portanto, você só precisa do Arduino IDE normal instalado em seu PC para fazer o upload do esboço para o Due. Contanto que seu PC tenha reconhecido o Arduino Due (o que deve ter acontecido se o esboço foi carregado), o programa GUI deve encontrar e conectar-se automaticamente ao Arduino ao iniciar, portanto, não há necessidade de definir a porta COM. No entanto, a seleção manual da porta COM é ativada se a seleção automática falhar.

Existem alguns exemplos de arquivos wave na pasta Arbitrary Waves (apenas por diversão) para ajudá-lo a começar. Assim como o programa GUI, o gerador de forma de onda do Arduino também pode ser controlado pelo monitor serial do Arduino definido para 115200 baud. Modelo ? para ajuda.

Ou se você preferir usar potenciômetros, interruptores e LEDs para controle, o início do esboço do Arduino lista as conexões de pinos.

Conexões de pino de saída de onda também estão listados lá, ou simplesmente conecte os pinos 3 e 7 do Arduino com um link ou, se você for extremamente cauteloso, use um resistor de valor baixo (47 - 100 ohms). Pegue a saída de onda quadrada do pino 7 e a saída analógica do DAC0.

Código

IMPORTANTE:Não clique no botão "Baixar como zip".
Para baixar os arquivos, clique em "Leia mais" abaixo.NOTA:Clicar em "Baixar como zip" só fará o download de um arquivo leia-me.https://github.com/Bruce-Evans/ArduinoDueArbitraryWaveformGeneratorAndController

Esquemas

Este circuito pode ser completamente omitido, mas se usado, deve proteger o Arduino contra conectar acidentalmente as saídas a tensões de até pelo menos mais e menos 25 V sem aumentar significativamente os tempos de subida e descida. D2 e D3 precisam ser diodos de alta corrente e recuperação rápida - descobri que os diodos Schottky eram muito lentos. Os fusíveis (F1 e F2) podem ser polifusíveis.

Processo de manufatura

  1. Arduino Spybot
  2. FlickMote
  3. TV B-Gone caseiro
  4. Relógio mestre
  5. Arduino Due TIC TAC TOE com tela sensível ao toque
  6. JX Wave Generator
  7. Encontre-me
  8. Arduino Power
  9. Tech-TicTacToe
  10. Arduino Quadruped