Outils pour utilisateurs

Outils du site


gd:vamobox:chipset

Mon électronique

Sans l'aide avisée du camarade djinn (www.forum-ecigarette.com) je n'aurai sans doute pas franchi le pas (l'électronique et moi cela fait au moins 2).

D'ailleurs vous trouverez la genèse de ce prototype (et d'autres j'espère) sur ce fil de discussion sur le forum forum-ecigarette.com.

Mon prototype est maintenant opérationnel et je vape avec au moment ou j'écris ces lignes ;-)

Quand cette page sera achevée vous trouverez toutes les informations pour vous faire votre électronique si vous le souhaitez. Pour en discuter rejoignez le fil de discussion cité plus haut ;-)

Actuellement :

  • prototype en phase de tests

A venir :

  • intégration dans une box

ATTENTION :

  • je ne suis électronicien donc ne prenez pas pour argent comptant mes schémas
  • la puissance électrique en jeu est potentiellement dangereuse (brûlures) !
  • certains accus ont une chimie instable dans certaines conditions (chauffe excessive et dégazage).

Bref ne faites pas n'importe quoi !

L'électronique et les programmes informatiques sont LIBRES :

  • le schéma électronique est sous licence “Attribution - Partage dans les Mêmes Conditions 3.0 France (CC BY-SA 3.0 FR)”
  • les programmes sous licence GPLv3

Principe

Peut-on, pour quelques euros et quelques soudures, obtenir une électronique comparable à celle d'un mod de type vamo ?

L'idée est de contrôler la tension (Volts) appliquée à l'atomiseur à l'aide d'un signal PWM généré sur un MOSFET.

Ce signal PWM est calculé et adapté en temps réel en fonction de la tension des accus et de la tension de consigne.

La valeur efficace (RMS) de la tension est donnée par la formule :

$V_e=\sqrt{\frac{1}{T}.\int_{t_0}^{t_0+T} u^2(t)\, \mathrm{d}t}$

Qui peut s'écrire :

$TV_e^2=\int_{t_0}^{t_0+T} u^2(t)\, \mathrm{d}t$

Une façon classique de calculer $\int_{t_0}^{t_0+T} u^2(t)\, \mathrm{d}t$ est d'utiliser une somme de Riemann qui consiste, graphiquement parlant, à obtenir l'aire totale d'une courbe par cumul d'aires plus petites approchées par des rectangles :

Source de l'image

L'algorithme utilisé dans le programme effectue ce cumul. Sa version simplifiée est

// T  : la période du signal PWM et est une constante du programme
// Ve : est la tension souhaitée par l'utilisateur
 
goal=T*Ve*Ve // ce qu'il faut obtenir
sum=0        // ce que l'on a au départ
t1=time()    // instant de début
activer le MOSFET
fin=t1+T     // instant de fin
tant que sum < goal et que t1 < T faire
   u=faire une acquisition de la tension aux bornes des accus // (environ 200 µs)
   t2=time() // instant courant
   sum=sum+(t2-t1)*u*u
   t1=t2
fin tant que
desactiver le MOSFET

La fonction fire() du programme implémentant l'algorithme est un peu plus compliquée en raison d'optimisations, de vérifications (accus trop déchargés, courts-circuits, …) mais respecte cette idée de base.

Caractéristiques

Le mod présenté ici est minimaliste :

  • pas d'écran OLED mais une simple led
  • pas d'ohmmètre donc pas d'indication précise de la résistance
  • pas de “booster” mais une alimentation de 8.4 Volts à 6.4 Volts (2 accus en série) régulée par le micro contrôleur entre 3.0 Volts et 6.0 Volts (au choix de l'utilisateur).

Les performances attendues, du fait notamment de l'absence de booster, seront optimales avec une résistances d'atomiseur aux alentours de 1.2 Ohms. Dans ce cas, à condition que les accus soient de qualité correcte, la puissance doit pouvoir atteindre sans peine les 20 Watts.

En contrepartie de ces limites le mod est :

  • simple à réaliser électroniquement
  • peu onéreux (moins de 10 euros)

Ergonomie

3 boutons (“fire”, “up”, “down”) et une led classique.

  • 3 clics rapides sur “fire” pour (dé)verrouiller le mod
  • “up” pour monter de 0.1 Volt la consigne (jusqu'à 6 Volts)
  • “down” pour descendre de 0.1 Volt la consigne (jusqu'à 3 Volts)
  • affichage(*) de la tension des accus par un appui prolongé (1 s) sur “up”
  • affichage(*) de la consigne par un appui prolongé (1 s) sur “down”

(*) : la led clignote en restant allumée plus ou moins longtemps en fonction de la valeur de la tension/consigne

Si en appuyant sur le bouton “fire” aucun courant n'est envoyé à l'atomiseur la led indique pourquoi :

  • allumée en continu : les accus sont déchargés
  • clignotements rapides : la résistance est trop faible (ou nulle en cas de court-circuit au niveau de l'atomiseur)
  • un flash rapide : la résistance est trop forte (ou infinie en cas de mauvais contact au niveau de l'atomiseur)

La led peut également s'allumer pendant la vape et dans ce cas indique que la consigne ne peut être atteinte. Il sera très bientôt temps de changer les accus. Les 2 raisons possibles sont :

  • la tension chute pendant la vape sous la limite acceptable
  • la tension restante dans les accus ne permet pas d'atteindre la consigne

La valeur de la consigne ainsi que l'état (dé)verrouillé du mod sont mémorisés dans la mémoire flash du µC et survivent donc à un changement d'accus.

L'électronique

  • la tension des accus est récupérée du pont diviseur
  • le MOSFET est commandé par PWM logiciel
  • la led est connéctée à une sortie PWM matériel
  • les switchs sont connectés sur entrée analogique (pull up)

La détection des courts-circuits et des résistances trop basses

En absence d'ohmmètre le mod inclut une détection des courts-circuits et des résistances très basses par la détection d'une chute de tension excessive aux bornes des accus. Des expérimentations à ce sujet sont décrites ici.

La solution actuellement retenue ne permet pas de détecter précisément la valeur de la résistance mais ce qui compte le plus n'est pas la valeur absolue de la résistance mais sa stabilité et surtout sa compatibilité avec le courant de décharge maximum des accus.

Il restera de toute façon, comme avec tous les autres mod, à la charge de l'utilisateur d'assurer la comptabilité entre la résistance et le courant maximum de décharge des accus.

Le programme en cours d'évaluation

Attention : opérationnel mais en phase de test (un bug vicieux peut tout faire exploser !)

2 fichiers : Le premier, prog.ino, contient le code général tandis que le second, arduino-core.h contient le code plus spécifique à l'Arduino.

prog.ino

Spoiler

arduino-core.h

Spoiler

Le prototype

Petite vidéo

Ne cherchez pas à monter le son, je ne parle pas.

proto-1

La version embarquée

A venir…

Quelques liens (il faut que je classe mieux ;-))

Mon kit :

Vendeurs petit matériel :

Régulateurs 5V :

  • LT1761 (peut utiliser des condensateurs céramiques)

Fusibles réarmable :

  • RGEF900 :

Petit fusible :

Matériels :

ATTiny85 :

Économie d'énergie

Fréquence MC :

pinChangeInt library :

Petit RTOS : http://www.femtoos.org/

Watchdog : http://arduino103.blogspot.fr/2013/06/comment-un-reset-darduino-par-logiciel.html

Liens relatifs aux programmes :

gd/vamobox/chipset.txt · Dernière modification: 2015/04/17 00:15 par gdb