(Loading...)

samedi 26 juillet 2014

PIC USB Oscilloscope double trace

Rendu en image de synthèse généré par Eagle3D

L'oscilloscope, l'appareil de mesure par excellence de tout l'électronicien. Indispensable pour la conception et/ou le dépannage de circuit électronique. Le prix d'un tel appareil n'est pas toujours accessible pour les budgets réduits, qui plus est pour l’électronicien amateur qui ne l'utilisera qu'occasionnellement. 
Il y a un ancien article présentant la version du pauvre, qui reste tout de même très limitée. 
Le nouveau modèle que je décris ici, permet d'en réaliser un, aux performances autrement supérieures sans pour autant se ruiner.






L'auteur génial de ce petit bijoux a développé ce circuit, en ayant pour objectif d'avoir un oscilloscope fait-maison, performant, précis, tout en restant accessible aux petits budgets, étudiants, amateurs, le tout d'une taille réduite -ma version occupe la surface d'une carte de crédit- et nécessitant très peu de composants.

L'objectif est atteint, Ajoy Raman présente le DSPICoscope AJScope oscilloscope USB double trace, dont un dossier est présenté sur Instructable. Vous y trouverez tous les éléments permettant de réaliser cette application.

Caractéristiques:

 - 2 Canaux
 - Bande passante analogique (signaux larges), 0.30/0.30/0.70 MHz
 - Bande passante analogique (petits signaux), 12/6/7 MHz
 - Impédance d'entrée 1 MΏ
 - Affichage de tension max +/- 12.5 Volts -Sonde 1:1-
Plus d'informations sont disponibles sur le lien Instructable de l'auteur.

Coté matériel:
Le cœur du système est basé sur un PIC 16 bits DSP modèle DSPIC30F2020 accompagné de MCP6S22, amplificateur de gain programmable -un par canal-. 
l'interface entre la platine et l'ordinateur est confiée à un convertisseur TTL > USB type FTDI32 ou équivalent.

Coté Logiciel:
La version Windows nécessite le framework .NET installé, une résolution minimale de 1280x1024.
La version Python -que je n'ai pas testé- permet l'utilisation sous d'autres OS.
Une copie de tous les fichiers nécessaires sont disponibles en fin d'article, intégrant ma version du circuit imprimé.



L'oscilloscope en cours d’évaluation sur une platine de test.
Sous la jungle de fils, on peut apercevoir le PIC et le convertisseur FTDI externe.












Le circuit aux dimensions relativement réduites, en double face,  conçu pour être réalisable avec un équipement amateur, gravure par technique toner transfert, et les soudures double-faces accessibles au fer à souder classique.












Le DSPic30F2020 chauffe pas mal, un système de dissipation est nécessaire. Ici un radiateur, cannibalisé sur le chipset d'une carte mère de PC.
Prévoir grand pour le dissipateur, le modèle sur la photo est tiède en permanence.












Ajoy, a conçu son circuit en intégrant une puce CMS FTDI, j'ai pour ma part réalisé deux versions:
L'une intégrant le convertisseur, l'autre utilisant un module externe, plus facile à mettre en œuvre pour un prix équivalent, réduisant la taille du circuit imprimé.
J'ai pu essayer les modèles présents sur la photo ci-contre, tous sont parfaitement compatibles. 
Le choix final sera le dernier à droite, qui se présente comme une simple fiche USB encapsulée.



Les connexions avec le monde extérieur se résument au plus simple.
En haut, les entrées CH1 et CH2, avec GND commun au centre.
En bas, le connecteur reliant la platine au convertisseur externe - GND, 5V, Txd, Rxd -

Le DSPICoscope est alimenté via le port USB.








Modélisation et impression 3D sur la H-ProtRap, d'un boitier pour l'oscilloscope USB.
Le design est de simple facture, mais il remplira parfaitement son rôle de protéger le circuit électronique.















Ci-contre la nouvelle interface logiciel sous Windows.
Une version multi-plateforme existe en Python.
Accès aux fonctions classiques d'un oscillo, avec en prime possibilité de réaliser des captures d'écrans sous différents formats d'images, sauvegarde des données au format CSV pour import sous un tableur.

La nouvelle version du logiciel sous Windows ainsi que tous les éléments permettant de réaliser cet outil sont disponibles plus bas.





NOTE: Une nouvelle mise à jour du logiciel, actuellement en cours de test, sera bientôt mise en ligne.

Archive comprenant les fichiers de réalisation du PCB, la dernière mise à jour du firmware corrigeant certains bugs, et la nouvelle interface sous Windows:
USB PIC Oscilloscope


Mon vieux, lourd et encombrant METRIX OX722 va définitivement prendre la poussière avec ce nouvel oscillo.



32 commentaires :

Anonyme a dit…

Gracias por compartir tu trabajo.

HeartyGFX a dit…


hola,
De nada mi amigo.

;)


WolHerm a dit…

Thank you for your works on Ajoy Raman's project. Would it be possible to get the EAGLE files?

HeartyGFX a dit…


Hi,

You're welcome,
and thanks to Ajoy for sharing his work.

I can send it by mail, just give it here -I'll not publish it-

Have a nice day,

;)


HeartyGFX a dit…




"Bonjour, Merci à Ajoyz et à vous pour ce superbe oscillocope !
Pourriez-vous m'envoyer les fichiers nécessaires à la création de la platine ?
Voici mon adresse email : j.vbiiiip@biiiip.fr Bien cordialement Julien"



Bonjour,

Julien V. je recopie votre message ici sans le mail, afin d'identifier la réponse.

Avant tout, merci pour votre commentaire.

Les fichiers nécessaires à la réalisation du PCB sont déjà disponibles en fin d'article
sur le lien "USB PIC Oscilloscope", au format PDF prêt à imprimé.

Je peux mettre à votre disposition le fichier Eagle,
qui ne vous servira uniquement en de cas de modification
que vous désireriez apporter au tracé.

A bientôt,

;)


SebastianL a dit…

Hi,
congratulations for a great project.
I got a question:
In the blog the microcontroller is type DSPIC30F2020 but in the archive DSPicoscope.zip it's DSPIC30F2010.
Can both types be used here?

Anonyme a dit…

Merci beaucoup je n'avais pas vu le lien autant pour moi !

HeartyGFX a dit…



Hi,
Sebastian, the circuit is designed for the DSPic30F2020 only.
On the schematic, the 30F2010 is used because on Eagle CAD, the symbol is the same for both,
you're right to ask, it can be confusing.

So Definitely the 30F2020 only.
-I updated the archive, fixed the png schematic file and txt BOM file -

Thanks for your comment.

Have a nice day.

Julien, n'hésitez pas à montrer des images de votre version.

A bientôt,

;)



SebastianL a dit…

Will the sources for the microcontroller and Windows-GUI be available?

HeartyGFX a dit…



Hi,

Actually the project is not open source.

Regards,

;)



Anonyme a dit…

Bonjour.
Le programme ne se exécute pas dans Windows XP. Ce est pour .net 4.5? Il n'a pu être traduit dans .NET 4?
Merci

HeartyGFX a dit…


Bonjour,

je n'ai pas eu l'occasion de tester le logiciel sous XP.

le compiler avec un version du précedent framwork devrait être possible, il faut tester.

Pour le moment, je n'ai pas vraiment de temps pour cela, mais à l'occasion, je testerais.

En attendant, Ajoy Raman l'auteur à publié les sources de sa version initiale,
vous pourrez toujours faire un essais de compilation pour XP.

Tenez-moi au courant.
A bientôt,

;)



Ajoy Raman a dit…

This is Ajoy:

My original project on Instructables is now open source.

http://www.instructables.com/id/DIY-USB-OSCILLOSCOPE-IN-A-MATCHBOX/

I am happy to share all the source files (C, .Net & Python) at:

https://github.com/ajoyraman/USB_Matchbox_Scope

Please do share with the student and teaching community!!

Puig Thierry a dit…

Bonjour HeartyGFX

J'ai presque terminé le DSPICscope, j'attends juste le regulateur 3.3v, en attendant
ce soir je suis passé à la programation du pic mais il me manque la conf des fusibles
Mon pickit 3 me propose une conf par defaut :
FFFF FFFF FFFF FFFF FFFA FF7F FFF8 FFFF pas sur que cela soit correcte.
De plus quelle solution pour la fixation du radiateur ? cyanolite...

Merci de ton aide

Thierry

HeartyGFX a dit…


Bonsoir,

J'ai laissé les fusibles par défaut sur mon PicKit II.
Rien de particulier à signaler de ce coté là.

Concernant le dissipateur
j'utilise de l'adhésif thermique
que j'ai acheté sur Ebay pour 3 ou 4 euros.

Au pire récupérable sur une vieille config PC,
carte graphique, ou processeur ou encore sur le chipset.

N'hésite pas à montrer ta réalisation une fois
terminée.

;)




HeartyGFX a dit…


Hi Ajoy!

Thanks for your visit and comment.
The link will be useful for who's interested by this awesome project.

Regard my friend,

;)


Puig Thierry a dit…

Bonjour HeartyGFX

Après une pause estivale me revoici avec une photo (le CI) et des problèmes
car mon DSPICscope ne fonctionne pas, la photo est dispo ici :
http://dl.free.fr/mebxne0bZ
Donc le problème est qu'il ne fonctionne pas, le led clignote 1 fois par seconde et
le logiciel après sélection du bon port com passe en timeout, ou sujet du port COM
pour le moment il est en 9600 8N1.j'ai inversé le RX/TX résultat la led ne clignote
plus, peut être une erreur sur le CI j'ai repris le tracé sous sprint-layout 6, si
cela intéresse je donne les fichiers.
Voila si tu as une idée ?

Cordialement Thierry

Puig Thierry a dit…

Bonjour HearthyGFX

Je viens de découvrir une petite erreur sur mon circuit mais qui
aurait juste une incidence sur le fonctionnent d'une voie.
Pour la vitesse du port com j'ai regardé sur la page de Ajoy et
je crois qu'il doit être en 115200.
A chaque fois que je sélectionne mon COM12 sur le logiciel la led
du DSPICscope clignote, si j'insiste Windows me renvoie une erreur
"Une exception non gérée s'est produite dans votre application......
l’accès au port COM12 est refusé"
J exécute le logiciel en mode admin.

Thierry

HeartyGFX a dit…


Bonjour,

je susi navré, étant quelque peu occupé ailleurs je réponds tardivement.
Le circuit est propre, fait maison ou par un professionnel?

En premier lieu les paramètres de port COM sont 115200 8N1.
Mais en général lorsque je plug
l'oscillo le convertisseur USB>RS232 garde les valeurs par défaut à 9600
et cela fonctionne tout aussi bien.

Ensuite il faut savoir que les port COM sont assez sensibles
sous Windows, par expérience, que ce soit les port simulés
ou les natifs, un rien fait planter la liaison, et renvoie
un code d'erreur.

Il me faut parfois, lorsque je bidouille avec des ports séries,
les supprimer/désactiver dans le gestionnaire de périphérique,
voire parfois de changer le numéro de COM attribué afin de
débloquer le port en question sans avoir à rebooter.

En fonctionnement normal la LED ne clignote que lorsque
que l'oscillo est en mode sampling (lire un signal).

Il n'est pas nécessaire de lancer le logiciel en mode admin,
le logiciel n'utilisant pas d'élément particulier.

Ce que je peux conseiller c'est d'isoler les éléments afin
de confirmer étage par étage le bon fonctionnement des composants.

En premier lieu, le PIC et le convertisseur USB>RS232, l'idéal
est de ne brancher que le PIC (quartz et condo) et le convertisseur
sur une LabDec et de vérifier que l'ensemble est bien reconnu sous Windows?

C'est peut-être un soucis de PIC hard, ou soft...
La liaison entre les deux étant directe, cela ne laisse pas beaucoup
d'alternative d'erreur.

une fois confirmé le fonctionnement en volant de ces deux éléments,
il sera facile de pister l'origine de la défaillance.

Courage c'est un bel outil qui mérite quelques suées.

;)



Puig Thierry a dit…

Bonjour,

Pas grave pour la réponse tardive, merci pour le circuit réalise
par mes soins (méthode plastifieuse) le vernis est réalisé avec ce
film : http://www.rembrandtelectronics.com/shop/product-category/solder_mask_resist_green
Un peu cher mais vraiment bien, sinon j'ai testé le câble USB-serie
pas de problème de ce coté, puis j'ai mis le PIC sur une breadboard
mais j'ai plus de quartz 16 Mhz, j'ai testé avec un 12 et un 20, mais
à priori cela ne va pas, je vais voir pour en récupérer demain.

Thierry

HeartyGFX a dit…


Bonsoir,

ok pour le solder mask j'avais déjà vu ces feuilles
sur les sites de ventes, mais je ne savais pas
que l'on pouvait les utiliser de cette manière,
et effectivement c'est un peu cher.

Pour la suite, j'attends donc le résultat
qui apportera je l'espère quelques lumières.

;)


Puig Thierry a dit…

Bonsoir

A défaut de lumière ..... malheureusement les tests sur la breadboard
ne donne rien, pas de reconnaissance du logiciel, j'ai reprogrammé le pic
j'ai aussi vérifiées les registres de configuration et testé sur 3 PC
différent tiens d’ailleurs je me suis rendu compte que le logiciel ne tourne
pas sous XP normal ? pic HS ? je pense pas car les pin TX RX sont utilisées
pour la programmation, que cela soit sur win7 32 ou 64 bits le résultat est
le même, sous breadboard la led est constamment allumée (je l'ai juste connecté
pour indicateur) ou alors mon câble USB n'est pas compatible il contient FT232RL.
Moi je sèche ......

Thierry

HeartyGFX a dit…


Bonsoir,

c'est plutôt positif, je veux dire que cela reste cohérent
rien de pire que des pannes qui défient la logique.

En premier lieu, le logiciel ne tourne pas sous XP,
cette version tout du moins.
Ajoy à fait une mise à jour qui tourne sous XP,
je n'ai pas encore eu le temps de la tester et la mettre en ligne,
ainsi que le firmware dans lequel il apporte quelques améliorations,
je mettrais les mises à jour aussitôt que possible.

Concernant le FT232, je ne pense pas qu'il s'agisse d'un soucis
de compatibilité, j'ai testé comme l'indique l'article toutes
les puces de conversion courantes, y compris celle de FTDI, mais pas en modèle câblé.


Reste le PIC, que PGC et PGD fonctionnent en mode programmation
mais pas en mode TTL reste possible.
J'ai rencontré des cas de PIC sur lesquels les broches multi-fonctions
présentaient une défaillance, due à une mauvaise manip, sur une des fonctions.

Si tu as un PIC de rechange sous la main, il sera alors facile
de répondre à la question.

Et comme tout est possible, as-tu un autre convertisseur également sous la main?

Tiens moi au courant.

;)



Puig Thierry a dit…

Bonjour,

j'ai essayé avec un port COM1 et une petite platine à base de MAX232
et le résultat est le même sur la breadboard et le circuit imprimé.
Pour ce qui est de changer le PIC il faut que j'en commande un autre
chez Conrad, car même sur Paris il est introuvable.
Enfin si j'ai tué le PIC je vois pas comment !!! même si je suis trompé
entre RX/TX, j' ai l'habitude de la série 16F et 18F et s'est plutôt
robuste.

Thierry

Puig Thierry a dit…

Bon la commande est passé pas chez Conrad j'ai trouvé moins
chère sur Ebay 3 pièces pour 19 € port gratuit et vendeur en Fr
comme ça j'aurais du stock ;)
si cela intéresse :http://www.ebay.fr/itm/262063057472?_trksid=p2060353.m2749.l2649&var=560840751396&ssPageName=STRK%3AMEBIDX%3AIT

HeartyGFX a dit…


Bonsoir,

Il n'y plus qu'à prendre son mal en patience
jusqu'à l'arrivé des PIC.

;)


Puig Thierry a dit…

Bonjour

J'ai reçu les pics ce matin, et je viens de faire 2 essais, breadboard
et circuit définitif et cela fonctionne ;)), donc le problème venait
bien du pic défectueux soit par ma faute (inversement TX/RX) ou le pic
était déjà malade avant, impossible à savoir.
Maintenant reste plus qu'a mettre tout ça en boite, je ferais des photos
du résultat final. Merci de ton aide ;)

Thierry

HeartyGFX a dit…


Bonjour,

en voilà une bonne nouvelle!
Mes compliments pour ton nouvel équipement fait-maison.

Il serait sympa de mettre un petit mot sur le site Instructable
afin de remercier son auteur et de confirmer via le bouton "I Made It" afin
de monter son compteur de popularité.

Et oui! des photos du module fini...

Dernier point, le PIC chauffe, ne néglige donc pas le dissipateur.

;)


Puig Thierry a dit…

Bonsoir,

Comme promis voici des photos de mon DSPICoscope terminé.
http://dl.free.fr/bglcd8VnW

merci encore pour l'aide

Thierry

HeartyGFX a dit…


Bonsoir,

et bien voilà un projet finalisé,
mes compliments ta réalisation.

J'aime bien les sondes que tu as choisi.
Pense toutefois à laisser quelques orifices
afin d'aérer le µContrôleur.

J'aurais aimé cependant, que tu postes les photos
dans un endroit où dans quelques mois/années
elles puissent encore exister, permettant aux visiteurs
de ne pas se retrouver avec des liens morts.

Quoiqu'il en soit,
merci d'avoir pris le temps de poster des images.

A bientôt,

;)





Puig Thierry a dit…

Bonjour

Voici un lien à plus long terme pour les photos :
https://goo.gl/photos/WejdVPd4UAy6qxnu5

Au sujet de la température du Pic j'ai ajouté un radiateur de chipset
de carte mère, puis le boitier n'est pas entièrement clos sur un coté
et de plus en acier, donc cela devrait faire l'affaire.
Sur Instructable Ajoy a mis en ligne un nouveau firmware ainsi qu'une
nouvelle version du logiciel tu l'as testé ?

Thierry

HeartyGFX a dit…


Bonjour,

c'est parfait Thierry, merci ;)

Voilà quelques mois en effet qu'il m'a envoyé
une mise à jour, mais je n'ai pas eu l'occasion encore
de tester.
Tellement de projet en simultané sur le feu
que parfois je m'y perds.

C'est dans ma liste "à faire", néanmoins.

;)