Après avec mis en stand-by mon précédent projet (ma centrale inertielle) jusque la rentrée (je me casse les dents sur un problème d'I2C sans arriver à savoir si ça ne marche pas à cause de l'interface entre les 2 I2C (l'un en 5V l'autre en 3.3V) ou à cause de mon code sur le PIC33F...), j'ai décidé de commencer un autre projet qui me trotte en tête depuis plusieurs années.
J'aimerais réaliser mon propre oscilloscope numérique.
En effet, j'ai souvent été bloqué dans mes projets parce que je n'ai pas les moyens de me payer un oscilloscope qui pourtant, est un outils très pratique pour étudier les signaux de tout types. Plutôt que d'en acheter un, je pense pouvoir le fabriquer à moindre coût !
Pour commencer, jusque la rentrée, je vais me consacrer sur le logiciel informatique ! Je compte le coder en C++ avec Qt.
Le logiciel permettra de :
- gérer l'affichage de deux voies simultanément
- modifier l'échelle temporelle
- modifier les échelles Y des deux voies
- choisir un offset en X et Y pour chacune des voies
- sélectionner un mode de représentation standart en choisissant ou non de moyenner les valeurs
- sélectionner un mode de représentation XY, pour avoir la voie une en fonction de la voie 2
- sélectionner un mode déclencheur. L'acquisition des voies se déclenchera lorsque la tension de l'une des deux voies au choix aura bougé d'un certain seuil
- sélectionner un mode "écoulement du temps" où les tensions des deux voies défilent en fonction du temps
- sélectionner un mode de représentation spectrale d'une des deux voies (en utilisant un périodogramme modifié (estimateur de Welch) où les paramètres seront customisable par l'utilisateur)
- La fréquence d'échantillonnage (choix entre 2000, 4000, 8000 ou 16000 Hz)
- Le domaine d'acquisition (choix entre [0V;5V], [0, 12V], [-5, 5V], [-12, 12V]
Avec 4 octets par couple de valeurs (12 bits par valeur + 8 bits pour d'éventuels tests) et une fréquence d'échantillonnage de 16kHZ, je n'aurais que 64Ko de données par seconde, ce qui est largement supportable par de l'UART.
Voila. J'espère que je n'abandonnerais pas encore une fois un projet...
Pour le moment, je me consacre à ce que je sais faire de mieux : la partie logicielle !