Étape 5: Intégration de l’Arduino (tournant sur l’onduleur)
Nous ne voulons pas notre onduleur toujours relié à la batterie pour de multiples raisons. Nous ne voulons pas une charge fantôme potentiellement vider notre batterie quand il n’est pas en cours d’utilisation, mais surtout, nous ne voulons pas de personnes capables de se connecter dans leurs téléphones portables ou les ordinateurs portables et de vider la batterie sans travailler pour elle. L’utilisation de l’Arduino pour allumer/éteindre l’onduleur permet de gérer les entrées et sorties de notre batterie sans compter sur l’honnêteté ou l’expérience technique de nos utilisateurs.
Nous pouvons facilement intégrer l’Arduino comme le gardien de la porte de l’onduleur à l’aide d’un MOSFET. Un MOSFET est comme une normale transistor , mais nécessite moins actuel de la porte pour mettre en marche, tout en offrant beaucoup plus courants (le compromis est que la tension d’entrée doit être supérieure à un transistor normal, mais ce n’est pas un problème pour un Arduino). Nous avons introduit le MOSFET dans le circuit de la batterie-onduleur afin que l’extrémité négative de l’onduleur a été reliée au drain du MOSFET et le pole négatif de la batterie a été connecté à la source du MOSFET. L’un de l’Arduino sortie de pins a été ensuite connecté à la porte de la MOSFET. Lorsque quel que soit le critère a été fixé a été atteint (une certaine durée de vélo, la tension fournie, etc.) l’Arduino s’applique une tension jusqu'à la porte, permettant aux actuels de la borne positive de la batterie s’écouler dans l’onduleur via le MOSFET et dans l’extrémité négative de la batterie (c’est à dire remplir le circuit). Lorsque l’Arduino désactive ce signal, le circuit est rompu et l’onduleur s’éteint.
Parce que le MOSFET peut gérer de grands courants, ils peuvent devenir assez chaud. Tout comme avec le régulateur 5V, nous avons ajouté un petit dissipateur de chaleur pour aider à dissiper la chaleur.
Exemple de Code :
le code complet se trouve à la fin de ce Instructable
le code en gras , c’est ce que nous ajoutons au code d’en haut
mosfet int = 7 ; utilisé pour allumer l’onduleur
unsigned long timeOn, timecheck ; pour le contrôle de temps
void loop() {}
Si (motorV > 1.0 & &! hasBeenOn) {}
bol = millis() ;
}
inverterControl() ;
}
la fonction distincte
void inverterControl() {}
BattV usagées = getbattV() ; Vérifiez la tension de la batterie
TimeCheck = millis() - timeOn ; Vérifiez combien de temps l’utilisateur a été faire du vélo
/ * Nous voulons que l’utilisateur d’avoir fait du vélo pour un certain laps de temps
avant d’autoriser l’utilisateur à charger électronique de l’utilisateur.
Nous devons également être sûr que la batterie n’est pas insuffisante.
*/
Si (hasBeenOn & & (BattV usagées > 10.0) & & (timecheck > 5000) & &! mosfetOn) {}
digitalWrite (mosfet, HIGH) ; l’onduleur est allumé lorsque l’Arduino allume le MOSFET
mosfetOn = true ;
}
ElseIf ((BattV usagées < = 10, 0)) {//turns convertisseur si la batterie est trop faible
digitalWrite (mosfet, faible) ;
mosfetOn = false ;
}
d’autre if(timecheck <5000) {//turns hors si l’utilisateur s’est arrêté / n’a pas fait du vélo assez longtemps
digitalWrite (mosfet, faible) ;
mosfetOn = false ;
}
}