Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Générateur de signaux arbitraires Arduino Due

Composants et fournitures

Arduino Due
× 1

À propos de ce projet

Description générale

Cela fonctionne maintenant sur Linux ainsi que Windows.

Fréq max. de l'onde analogique : 100 kHz. Fréquence maximale des ondes carrées :42 MHz.

Facteur de marche réglable de pratiquement 0% à 100%

Très facile à construire - voir Installation ci-dessous.

Il s'agit d'un projet en deux parties :la carte Arduino Due elle-même et une interface graphique de contrôleur à utiliser sur votre PC, bien que la carte Arduino puisse également être utilisée seule à l'aide de potentiomètres, de commutateurs et de LED.

Aucun circuit n'est nécessaire, bien qu'un circuit de protection de sortie en option soit proposé, ce qui devrait protéger la carte Arduino de la connexion accidentelle des sorties à des tensions allant jusqu'à plus et moins 30 V environ. (peut-être plus)

En utilisant l'interface graphique du contrôleur sur votre PC, des ondes arbitraires peuvent être dessinées, modifiées, enregistrées, ouvertes et téléchargées sur l'Arduino Due, automatiquement connecté via le port USB. Un fichier d'aide complet est inclus.

Une fonction d'onde « étagée » permet à n'importe quel nombre d'étapes nettes (un échantillon) dans l'onde d'être facilement produites si vous le souhaitez. De plus, la sortie peut être commutée sur onde sinusoïdale ou triangle/dent de scie à la place.

De plus, une onde carrée est produite simultanément qui peut être soit synchronisée, soit complètement indépendante. Les ondes peuvent être contrôlées par la fréquence ou la période. Le cycle de service peut être réglé de pratiquement 0 % à 100 %. Ou la largeur d'impulsion peut être réglée constante. (dans les limites de la période, bien sûr)

Les nouveaux paramètres peuvent être saisis directement via le clavier du PC ou le clavier du programme. Ou, en appuyant sur "MODE" permet un réglage coulissant.

Un mode exact est disponible pour l'onde analogique, ce qui évite les "pas de fréquence" normalement associés aux générateurs de formes d'onde à synthèse numérique directe (DDS). Cela rend une fréquence plus précise possible en permettant l'accès aux fréquences entre ces "pas de fréquence" car la sortie n'est pas une division de la fréquence d'horloge Arduino lorsque le mode exact est activé.

Une fonction de balayage de fréquence (log) pour l'une ou les deux ondes est incluse, et il existe également une minuterie avec une sortie Arduino positive ou négative.

Spécifications

Onde analogique :

La résolution est de 12 bits avec jusqu'à 4096 points de cheminement.

La plage de fréquences est :0,05 mHz (20 000 secondes) à 100 kHz.

Fréquence d'échantillonnage :(au-dessus de 1 kHz en utilisant le DMA) Jusqu'à 1,6 MHz.

Taux d'échantillonnage :(jusqu'à 1 kHz) 400 kHz.

Taux d'échantillonnage en mode exact :(toute fréquence) 400 kHz.

Largeur d'impulsion minimale :(cycle demi-onde)

À 0 % de cycle de service :350 nanosecondes (environ) à n'importe quelle fréquence.

À 0,01 % du cycle de service :jusqu'à 2,5 - 25 microsecondes. (environ)

- si la fréquence est supérieure à 1 kHz ET que le mode exact ou la synchronisation est activé,

- sinon 350 nanosecs.

Onde carrée :

La plage de fréquences est :0,05 mHz (20 000 secondes) à 42 MHz.

Largeur d'impulsion minimale :

Synchronisé :[Fréq :0,05 mHz (20 000 secondes) à 100 kHz]

À 0 % de cycle de service :48 nanosecondes à n'importe quelle fréquence.

À 0,01 % du cycle de service :2,5 - 25 microsecondes. (environ)

Non synchronisé :[0,093 mHz (10 737 s) à 42 MHz]

12 nS de 1,3 kHz à 42 MHz. (En utilisant PWM)

24 nS de 650 Hz à 1.29999 kHz. (En utilisant PWM)

48 nS de 325 Hz à 649,99999 Hz. (En utilisant PWM)

96 nS de 163 Hz à 324,99999 Hz. (En utilisant PWM)

En dessous de 163 Hz :(Utilisation d'une interruption)

À 0 % de cycle de service :96 nanosecondes.

A 0,01 % du cycle de service :5 microsecondes.

Installation

Le programme GUI car votre PC est "portable" et n'a donc pas besoin d'être installé.

Pour les utilisateurs de Windows, extrayez simplement le fichier .zip dans un dossier de votre choix et faites un raccourci vers le fichier .exe. Remarque :Le fichier "DueAWGController-Win64.zip" est destiné aux systèmes 64 bits, mais le fichier 32.zip fonctionne de toute façon de manière plus fiable car il intègre Java.

Pour les utilisateurs de Linux, extrayez le fichier DueAWGController-LinuxXX.zip dans un dossier, puis double-cliquez sur le fichier DueAWGControllerLinux ou ajoutez-le au menu système.

Vous devrez peut-être installer OpenJDK 8 (java 8) pour Debian, Ubuntu, etc. :sur la ligne de commande (dans Terminal), tapez :sudo apt-get install openjdk-8-jre (les versions les plus récentes peuvent ne pas fonctionner.)

Vous devrez peut-être également obtenir l'autorisation d'accéder à l'USB avant de pouvoir vous connecter à l'Arduino. Tapez :sudo usermod -a -G dialout $USER

Sont également inclus deux fichiers "arm" pour Raspberry Pi, etc., mais ils n'ont pas été testés. S'il vous plaît laissez-moi savoir s'ils fonctionnent.

Le croquis Arduino n'a pas besoin de bibliothèques spéciales, vous n'avez donc besoin que de l'IDE Arduino normal installé sur votre PC dans le but de télécharger le croquis sur le Due. À condition que votre PC ait reconnu l'Arduino Due (ce qu'il a dû faire si l'esquisse a été téléchargée), le programme GUI devrait automatiquement trouver et se connecter à l'Arduino au démarrage, il n'est donc pas nécessaire de définir le port COM. Cependant, la sélection manuelle du port COM est activée si la sélection automatique échoue.

Il y a quelques exemples de fichiers wave dans le dossier Arbitrary Waves (juste pour le plaisir) pour vous aider à démarrer. En plus du programme GUI, le générateur de formes d'onde Arduino peut également être contrôlé par le moniteur série d'Arduino réglé sur 115 200 bauds. Taper ? pour aider.

Ou si vous préférez utiliser des potentiomètres, des commutateurs et des LED pour le contrôle, le début de l'esquisse Arduino répertorie les connexions des broches.

Connexions des broches de sortie d'onde sont également répertoriés ici, ou connectez simplement les broches Arduino 3 et 7 avec un lien, ou si vous êtes ultra prudent, utilisez une résistance de faible valeur (47 - 100 ohms). Prenez la sortie d'onde carrée de la broche 7 et la sortie analogique du DAC0.

Code

IMPORTANT :Ne cliquez pas sur le bouton « Télécharger au format zip ».
Pour télécharger les fichiers, cliquez sur « Lire la suite » ci-dessous. REMARQUE : Cliquer sur « Télécharger en tant que zip » ne téléchargera qu'un fichier readme.https://github.com/Bruce-Evans/ArduinoDueArbitraryWaveformGeneratorAndController

Schémas

Ce circuit peut être complètement omis, mais s'il est utilisé, il devrait protéger l'Arduino contre la connexion accidentelle des sorties à des tensions allant jusqu'à au moins plus et moins 25 V sans augmenter de manière significative les temps de montée et de descente. D2 et D3 doivent être des diodes à courant élevé et à récupération rapide - j'ai trouvé que les diodes Schottky étaient trop lentes. Les fusibles (F1 et F2) peuvent être des polyfusibles.

Processus de fabrication

  1. Arduino Spybot
  2. FlickMote
  3. Téléviseur maison B-Gone
  4. horloge maîtresse
  5. Arduino Due TIC TAC TOE avec écran tactile
  6. Générateur d'ondes JX
  7. Trouvez-moi
  8. Puissance Arduino
  9. Tech-TicTacToe