Historique du projet

Eté 2016:

J’étudie un projet personnel de montage électronique incluant un générateur de fonctions, un fréquencemètre, 3 canaux de mesure de tension continue avec affichage sur PC, un convertisseur numérique/analogique, quelques alimentations symétriques et une interface pour carte Arduino le tout inclut dans un boîtier de récupération. Etant donné que j’ai vu un fréquencemètre affichant de bonnes performances sur Ebay à un prix très bas, je choisis d’intégrer ce module plutôt que de la fabriquer.

Novembre 2016:

Après quelques tests, le fréquencemètre brûle. Je lis, trop tard, dans la documentation utilisateur, qu’il ne faut pas appliquer de signal ayant une tension supérieure à 5 volts. J’étais justement en train de tester des signaux en appliquant une tension continue de décalage ! Je trouve aussi que la lecture de fréquence sur l’affichage à 5 chiffres LED n’est vraiment pas pratique. Donc il faut concevoir un fréquencemètre plus versatile et robuste. Il répondra mieux aux besoins et pourra être interfacé facilement avec les autres modules Arduino du projet. Je cherche des idées de conception sur le web et trouve plusieurs projets de fréquencemètre compatible Arduino et des librairies de programme. Certains de ces projets ont une racine commune et mènent à la livraison des librairies “freqcounter” et “freqmeasure” qui ont été codées par Paul Stoffregen ( pjrc.com )

 

Test du concept de fréquencemètre Arduino

Test du concept de fréquencemètre Arduino

J’essaie d’abord d’utiliser ces librairies simplement en breadbordant un circuit et cela fonctionne effectivement. Tester le concept est assez facile. Je me décide donc à créer une carte basée sur la technologie Arduino. Il sera aussi facile d’afficher les résultats sur un écran LCD en utilisant une librairie standard. Mais je vois comme problème qu’il va falloir souder le microcontrôleur Atmega avec une grande précision. Jusqu’alors j’ai gravé des circuits imprimés en utilisant une simple imprimante laser et une solution de gravure maison à base de HCL/H2O2.

 

Exemple de gravure "maison"

Exemple de gravure “maison”

 

Le résultat n’est pas mal mais je ne soude pas très bien. Ne voulant pas étamer les circuits avec une solution chère et polluante d’étain liquide, je les étame à chaud à la main et le résultat n’est pas professionnel. Donc je cherche le moyen de faire fabriquer le circuit imprimé. Je trouve de nombreuses compagnies qui offrent des services de prototypage et aussi que certaines personnes lancent des projets kickstarter pour financer l’industrialisation de cartes électroniques. Etant donné que je suis de plus en plus dans la démarche de fabriquer la meilleure carte fréquencemètre compatible Arduino possible, l’idée de créer un projet professionnel fait son chemin.

Il ne faut que quelques heures pour créer une ébauche de campagne kickstarter. J’envisage d’abord de lancer cette campagne en janvier car nous sommes déjà en pleine période de préparation de Noël. Je commence à planifier un projet et me rends vite compte qu’il faut beaucoup plus de préparation pour lancer une campagne et que je dois avoir une meilleure confiance dans le produit pour m’engager à en fournir au moins une centaine. Maintenant, en avril 2017, je réalise que c’était une bonne décision de ne pas me lancer immédiatement!

Donc je commence à planifier mon projet grâce au logiciel de ganttproject.biz

Planification du projet

Planification du projet

 

Et oui, j’ai déjà passé 5 mois à étudier ce projet et j’ai encore besoin de temps! Ayant travaillé dans l’informatique, je sais parfaitement que la plupart des projets sont livrés très en retard. Souvent un projet prévu sur un an nécessite en fait un an et demi ! Il semble que c’est encore pire dans ce cas. J’ai entendu dire que la création d’un produit, quel qu’il soit, nécessite un an !

Décembre 2016

Pour évaluer le niveau de contribution kickstarter je demande des devis pour la fourniture et l’assemblage des composants. De nombreuses entreprises an Chine peuvent fournir tous les services. Je cherche aussi des entreprises françaises avec lesquelles il sera plus facile d’interagir pour la création du prototype. Il me faut plusieurs semaines pour avoir une vision plus précise des coûts et des contraintes pour prototyper une carte. Une entreprise s’intéresse beaucoup à ma demande: Smart prototyping . Ils prennent beaucoup de temps pour sourcer les composants. C’est là que je découvre que un aspect de ce projet, qui me semblait mineur, est en fait une véritable activité professionnelle en soi. Trouver les composants est beaucoup beaucoup plus dure que je ne l’imaginais et je comprends donc pourquoi il existe de nombreuses entreprises dont c’est le métier. La difficulté est de croiser: la conception * les caractéristiques techniques des composants * le nombre et le coût des composants * en incluant les frais et délais de port * la disponibilité des composants. Puis il faut tester le circuit, changer certaines parties et recommencer à sourcer des composants… A l’heure actuelle je pense sourcer les composants moi-même et ne pas utiliser les services de Smart Prototyping que je remercie sincèrement pour le temps consacré en pré-vente.

Janvier 2017

Je constate qu’il me faut des supports de présentation marketing. Mon projet étant bilingue et kickstarter ne le proposant pas actuellement il faut que je crée mon site de présentation. Ce sera mieux car il me servira par la suite et j’aurai la maîtrise totale. Je choisis d’utiliser WordPress pour son extraordinaire productivité. Après avoir conçu un court plan marketing, je décide d’utiliser le nom de marque “Pandauino?” et crée le site Pandauino?

Il faut aussi des supports visuels pour promouvoir le projet. J’utilise le très pratique logiciel Diptrace pour concevoir le circuit électronique et découvre qu’il inclut une fonction de modélisation en 3D. C’est bien utile et facile à utiliser. Je crée un modèle 3D, publié sur sketchfab.com et complète la présentation de la carte en créant une courte vidéo.

Aller plus haut!

Etant donné que le microcontrôleur Atmega que je souhaite utiliser est cadencé à 16 Mhz, la fréquence maximale qui peut être mesurée en théorie est de 16/2.5 = 6.4 Mhz alors que je veux que la carte puisse mesurer des signaux de fréquence plus haute avec une bonne précision. Il est donc nécessaire d’utiliser un diviseur de fréquence. Après quelques tests je me rends compte que le 74HC4040 que j’avais pré-senti ne peut pas traiter les signaux supérieurs à 30Mhz dans des conditions réalistes et le bien connu 74HC4093 ne sera pas plus performant. J’ai donc à trouver un autre composant et demande donc des échantillons à Fairchild (74HC161 etc…). Je fais aussi des demandes d’amplis opérationnels à Analog Devices et de régulateurs de tension à Microchip. Finalement tous les diviseurs de fréquence testés ont une bande passante relativement étroite et il n’est donc pas possible de diviser toutes les hautes fréquences. Il faut avoir une approche de traitement en trois tiers, pour les basses fréquences, les hautes fréquences jusqu’à 100khz-1Mhz et les très hautes fréquences.

Cette carte devrait pouvoir mesurer des fréquences jusqu’à 50 Mhz voir 100 Mhz. Il me faut donc revoir la conception du circuit et pour cela je le modélise grâce au logiciel LT spice. L’objectif est d’amplifier les signaux dans la bande de 5Hz à plus de 50 Mhz avec une amplitude allant de moins de 500 mV à plus de 10 volts.

Février et mars

Je cherche des informations marketing et des prospects et migre le site Pandauino? vers un nouvel hébergeur. L’ajout de nombreux plugins et la sécurisation du site prennent un certain temps.

Il me faut aussi trouver des librairies logicielles sur lesquelles développer le programme et écrire la première version logicielle. Je ne souhaite pas écrire des classes et des classes et vous verrez que le programme est simplement procédural. Il utilise déjà plus de la moitié des ressources mémoires. Je me concentre sur la création des fonctionnalités suivantes:

  • Comptage de fréquence
  • Affichage des mesures sur écran LCD
  • Gestion de l’alimentation
  • Economie d’énergie
  • Gestion d’un menu permettant de choisir des paramètres
Diagramme de programmation du fréquencemètre compatible Arduino

Diagramme de programmation du fréquencemètre compatible Arduino

 

Afin d’avoir une vision globale du programme j’utilise le logiciel de diagramme DIA. Je cherche des informations sur la programmation d’un microcontrôleur vierge et la bonne configuration des « fuse bytes” (pour éviter de rendre le microcontrôleur inutilisable !)

Avril

Le premier circuit imprimé (PCB) est conçu et produit à Schenzen en Chine. Cela ne prend qu’une dizaine de jours pour recevoir de magnifiques PCB ! Je suis très satisfait de leur qualité. Je les vérifie à réception. Après l’assemblage des composants la carte fonctionne mais il y a quelques petites erreurs de conception que je découvre au moment de programmer la carte.

Carte du prototype n°1 du fréquencemètre

Carte du prototype n°1 du fréquencemètre

Lors des tests je constate un étrange phénomène. J’aperçois à peine un genre de petits fumée, comme un « spectre » lorsque je coupe l’alimentation ! Puis je constate que l’étage d’amplification n’a plus que un gain de « 1 » ! Il semble que l’esprit du transistor soit allé rejoindre un autre monde !

Apparemment j’ai sélectionné un transistor qui manque de puissance. En lisant à nouveau les spécifications techniques je constate en effet que ce transistor BFT92 ne supporte pas plus de 25 mA de courant au collecteur. Cela suffit en fonctionnement normal mais le composant brûle probablement à l’extinction de tension alors qu’un condensateur de forte capacité se décharge !

Je découvre aussi que le régulateur de tension auto-oscille à une fréquence d’environ 400 Hz. C’est presque le LA ! Je cherche d’autres régulateurs et constate que la stabilité est toujours un sujet de préoccupation dans les documents de spécifications des régulateurs à faibles pertes (LDO). Certain nécessitent un condensateur à forte résistance série sur la sortie, d’autres acceptent un condensateur de très faible résistance série. Etant donné qu’il me faut une source de courant qui puisse réguler une charge variant à très haute fréquence, il me faut utiliser un condensateur à très faible résistance série. Je demande donc des échantillons de quelques modèles de régulateurs.

Pour les tests il me faut fabriquer une petite source d’alimentation variable et acheter des oscillateurs VHF comme source de signal de grande précision. Il faut aussi que je définisse une méthode pour déterminer la précision de fréquencemètre afin d’avoir une estimation avant de lancer une campagne de communication et de financement.

Etant donné que la carte est équipée d’un port série UART je peux tout simplement récolter les mesures sur le moniteur série de l’interface de développement Arduino. Je constate que les résultats sont satisfaisants !

Tests de précision de mesure du fréquencemètre

Tests de précision de mesure du fréquencemètre

 

Il est possible de mesurer avec une précision d’environ 0,1% sur la plus grande partie de la bande passante Mais pour le moment il est impossible de dépasser les 40 Mhz. Je vois que

  1. La diode transil qui protège l’entrée signal à une capacitance bien trop importante et elle éteint le signal au-delà de 40 Mhz.
  2. Le circuit n’amplifie pas bien au-dessus de 40 Mhz.
  3. Le transistor brûle.

Les points 2) et 3) m’obligent à revoir la conception de l’amplificateur. Donc je retourne à la modélisation LT spice et considère deux étages de gain par transistor au lieu d’un seul. Le gain étant supérieur je n’ai pas besoin de court-circuiter la résistance d’émetteur par des condensateurs de forte capacité et cela va éviter de générer de forts courants transitoires dans le circuit. D’autre part je vais utiliser des transistors ayant une bien plus grande capacité en courant.

Je suis maintenant assuré que cette carte doit pouvoir atteindre un précision meilleure que 1% sur une très large bande de fréquence et d’amplitude de signal et il est donc possible de passer à la campagne de communication et de financement. En même temps il faut améliorer la qualité du logiciel, de l’alimentation et de l’amplificateur.

Mai

Précision du prototype II en mode basse fréquence

Précision du prototype II en mode basse fréquence

La conception du nouvel étage d’amplification a été très longue. Après avoir conçu sur spice et testé sur breadboard plusieurs circuits possibles j’ai commandé le nouveau circuit imprimé en Chine. Pendant ce temps j’ai testé des outils marketing pour faire connaitre la carte, particulièrement des outils de marketing par email. Je vois que le marketing consomme aussi beaucoup de temps et la campagne de financement sera peut être reportée.

Le circuit a été livré il y a quelques jours. Aujourd’hui, le 30 mai, j’ai réalisé une série de tests très précis. Après environ 6 heures de travail assidu et quelques modifications sur la carte et le programme informatique je suis très surpris du niveau de précision atteint. La grande majorité des mesures atteignent une précision de l’ordre de 100 ppm!. C’est uniquement aux limites du domaine d’utilisation que l’erreur “atteint” environ 0,2% Je pense donc que l’on obtient la précision maximale possible avec ce type de technologie.

 

Juin

Après avoir testé le deuxième prototype je peux raisonnablement lancer la campagne de financement. Mais après avoir étudié quelques campagnes sur Kicksater (et d’autres sites de financement) je dois constater qu’il n’y pratiquement que des campagnes qui sont 1) soit pas du tout financées ou très peu, ce qui revient au même, 2) soit largement financées à grand renfort de supports de promotion professionnels, de bonne qualité, tel que des présentations vidéos. Je cherche à en savoir un peu plus et il apparaît qu’une campagne de financement doit être préparée plusieurs mois à l’avance et lancée si l’on a la conviction d’avoir déjà un potentiel de financement de 30% de l’objectif. Etant donné que les vacances approchent, et particulièrement en France ou de nombreuses personnes vont prendre plusieurs semaines de vacances, je décide de passer les mois d’été à faire la promotion du projet.

Je commence par chercher des informations concernant le marketing par email et trouve un bon nombre d’entreprises qui fournissent ce type de services. Evidemment la première idée qui vient à un développeur de sites internet est d’envoyer des emails en utilisant un serveur SMTP. En fait c’est tout à fait déconseillé. L’envoi d’email en masse est très délicat puisque les serveurs, identifiés par leur adresse IP, sont évalués en permanence et placés en liste noire dès que des messages sont considérés comme abusifs. Les entreprises de marketing email passent donc leur temps, entre autre, à vérifier la qualité des emails, la qualité des listes de contacts et la légalité des actions afin que leurs serveurs soit placés en liste blanche, ce qui doit garantir un excellent taux de réception des emails. Il existe un outil qui permet de vérifier les taux de réception: https://www.senderscore.org/ et je dois dire que j’ai été surpris des résultats obtenus par certaines des principales entreprises de ce secteur.

Ces entreprises proposent un ensemble de services et des conseils que tout utilisateur devrait suivre pour améliorer la qualité de sa communication sur internet. Beaucoup de ces conseils relèvent en fait du bon sens, bien que les amateurs y pensent rarement. Par exemple on oublie souvent d’ajouter un moyen de contact, le lien vers un site internet, une page contact, ou une chaîne youtube dans les messages publiés sur les réseaux sociaux. Depuis que j’ai pris conscience de cela je remarque souvent des messages intéressants auxquels manquent un moyen direct d’en savoir plus. Ces entreprises d’emailing proposent aussi l’automatisation de messages techniques (par exemple pour le suivi d’une commande en ligne). De recherche en recherche je finis par suivre une formation marketing proposée par https://www.getresponse.fr/

Le marketing est une activité professionnelle qui pourrait m’occuper à temps plein. Donc je dois me concentrer sur quelques outils et méthodes adaptés à mon projet. Je cherche un moyen d’entrer en contact avec des personnes susceptibles d’être intéressées et finalement décide d’utiliser Facebook et Twitter. Le résultat est très positif. Non seulement j’ai beaucoup de contacts mais je reçois beaucoup de messages positifs voir d’encouragement. Je suis en relation avec des personnes du monde entier qui sont réellement intéressées

Je passe une autre partie de mon temps à finaliser la carte. Je débugge le code Arduino en commençant par le menu, qui utilise la librairie Menu Backend. Cela fonctionne bien. Il manque simplement des variables pour maintenir l’état des valeurs de menu sélectionnées. Je suis d’abord un peu surpris, car les éléments de menus sont des objets, puis je décide d’utiliser une méthode des plus simples en définissant des variables pointeurs qui pointent vers les objets sélectionnés. Je débugge ensuite le mode d’économies d’énergie. Lorsque le compteur ne mesure aucune fréquence pendant 5 minutes le microcontrôleur est mis en veille. Je pensais utiliser le bouton de menu, relié à la broche 17 (pour des considérations d’optimisation du dessin du circuit imprimé) mais je constate que je ne peux pas définir cette broche pour lever une interruption en utilisant la fonction attachInterrupt(). Il semble qu’elle est limitée aux broches 2 (int 0) et 3 (int 1). Je dois donc intervertir les broches 2 et 17. Je rédige une courte publication concernant les méthodes d’économie d’énergie sur Arduino. Ceci et d’autres petits problèmes m’obligent à re-dessiner le circuit imprimé.

Tant qu’a y être j’envisage d’ajouter un boîtier d’isolation EMI autour du circuit d’amplification, qui est la partie la plus bruyante de la carte. Ce circuit peut amplifier des signaux approchant les 100 Mhz à une impédance assez faible et je crains donc qu’il émette trop de perturbations électromagnétiques. N’ayant pas les moyens de faire des mesures j’envisage d’ajouter un boîtier “au cas ou”. Si je ne l’installe pas sur le premier lot de cartes il sera néanmoins possible de l’ajouter par la suite et notamment en cas de certification CEM. Il faut donc que je conçoive un modèle 3D, ce que je n’ai encore jamais fait. Je suis assez perdu lorsque je dois cherche un outil de conception. Il y en a de nombreux, dont certains, tel que Blender sont très complexes. Je n’ai ni le temps ni la motivation de me former à cette activité qui est marginale pour moi. Finalement je tente ma chance en utilisant un outil très simple, TinkerCAD. En effet je constate en suivant un petit didacticiel qu’il doit être assez facile de réaliser un boîtier de protection EMI. Par contre TinkeCAD créé des fichiers .stl et non des .step utilisables dans Diptrace.

https://skfb.ly/6snKy

Heureusement, il est possible de convertir ces fichiers en utilisant FreeCAD. Muni de mon modèle 3D, je m’adresse à des fabricants et je découvre que la conception d’isolation EMI est complexe. Il existe une variété de matériaux en fonction de l’objectif: isolation de l’intérieur vers l’extérieur ou de l’extérieur vers l’intérieur, contre les champs électriques ou contre les champs magnétiques, et dépendant évidemment de la fréquence des signaux. Il est possible d’utiliser un boîtier avec ou sans couvercle. D’autre part, je ne connais pas les propriétés thermiques du montage. Il doit englober un amplificateur, un diviseur de fréquence et un multiplexeur et je n’ai pas une idée précise du dégagement de chaleur. Faut-il créer des trous dans le boîtier? Quel sera l’impact sur le taux d’isolation? J’en conclue qu’il faudrait tester plusieurs boîtiers. Donc pour l’instant je vais prendre en compte l’emplacement du boîtier d’isolation EMI au cas ou je l’implémenterai dans le futur mais il ne sera pas inclut dans le premier lot de cartes. Je suis en contact avec des fournisseurs et je vais y réfléchir un peu plus.