Télécharger le PDF
        SAMOVAR 
×
Menu

Configuration du croquis (sketch)*

Samovar 7.00: les paramètres peuvent être configurés soit de la manière décrite ci-dessous pour l'Arduino IDE, soit via le configurateur. Le configurateur enregistre les valeurs choisies dans user_config_override.h, sans modifier le fichier principal Samovar_ini.h. Le micrologiciel inclut ce fichier automatiquement, et ses valeurs remplacent celles de Samovar_ini.h ; il peut aussi être créé à la main à partir du modèle user_config_override.example.h. Dans le configurateur, les paramètres sont répartis en sections (la liste « Section » («Раздел»)) : Principal («Основные»), Températures («Температуры»), Pompes («Насосы»), NBK («НБК»), Régulateur («Регулятор»), Équipement («Оборудование»), Rectification («Ректификация»), BK («БК»), Réseau («Сеть»), Capteurs («Датчики»), Moteur pas à pas («Шаговый двигатель»).
 
Pour adapter le croquis à la configuration de votre équipement, ouvrez-le dans  l'Arduino IDE et modifiez le fichier Samovar_ini.h
Dans l'Arduino IDE, ouvrez le fichier Samovar.ino du dossier ...\Documents\Arduino\Samovar\.
Cela charge dans l'Arduino IDE tous les fichiers du dossier ..\Documents\Arduino\Samovar\
Dans la rangée supérieure de l'Arduino IDE, trouvez l'onglet Samovar_ini.h et commencez les modifications.
 
 
 
Pour qu'une ligne de code ne soit pas compilée, et donc pas exécutée par Samovar, placez les caractères // devant la ligne (mettez-la en commentaire).
Inversement, pour qu'une ligne soit exécutée, retirez les caractères // (décommentez-la)
Il est recommandé d'exclure précisément les lignes qui concernent un équipement que vous n'avez pas, plutôt que de désactiver en bloc tous les paramètres dont vous pensez ne pas avoir besoin.
Pour plus de commodité, le code du fichier est divisé en blocs.
 
#define SAMOVAR_HOST "samovar"
Le nom de Samovar sur le réseau. L'appareil est accessible sous ce nom à l'adresse http://samovar.local (mDNS), et c'est sous ce même nom qu'il apparaît dans les ports réseau de l'Arduino IDE et du configurateur lors d'une mise à jour par WiFi. Dans le configurateur : section « Principal » («Основные»), « Nom de l'appareil sur le réseau » («Имя устройства в сети»).
 
Bloc
//Choix de la carte ESP32 utilisée
//********************************************
//#define BOARD DEVKIT
//#define BOARD LILYGO
//#define BOARD ESP32S3
//********************************************
Ignorez ce bloc. Le micrologiciel détermine lui-même le type de carte d'après la carte choisie dans l'Arduino IDE (DOIT ESP32 DEVKIT V1 / ESP32 Dev Module - DEVKIT, ESP32S3 Dev Module - ESP32S3) ou d'après la carte choisie dans le configurateur. Si rien n'est détecté, DEVKIT est utilisé.
 
Vous pouvez commencer à modifier les valeurs et à activer/désactiver les lignes de code à partir de cette ligne :
 
//Température de l'eau à laquelle l'opérateur sera alerté
#define ALARM_WATER_TEMP 70
Ici, 70 est la température en degrés Celsius. Lorsqu'elle est atteinte, un message signale la température critique du liquide de refroidissement (ci-après TC). Si un buzzer est utilisé et que la notification des événements est activée dans l'interface, Samovar alerte aussi par un son. Les alertes se répètent jusqu'à ce que la température baisse. Si vous voulez être alerté à une autre température, modifiez le nombre 70.
 
//Température maximale de l'eau à laquelle l'alimentation sera coupée
#define MAX_WATER_TEMP 75
Lorsque la TC atteint 75°, Samovar donne l'ordre d'éteindre le chauffage.
 
//Température maximale de la vapeur à laquelle l'alimentation sera coupée
#define MAX_STEAM_TEMP 98.8
Lorsque la température du capteur de vapeur atteint 98.8°, Samovar donne l'ordre d'éteindre le chauffage.
 
//Température maximale dans le TCA à laquelle l'alimentation sera coupée
#define MAX_ACP_TEMP 75
Lorsque la température du capteur du TCA atteint 75°, Samovar donne l'ordre d'éteindre le chauffage. (voir aussi Consigne du capteur du TCA)
 
//Température du capteur de vapeur à laquelle la colonne passe du mode montée en température au mode de travail et qui, en mode distillation avec un capteur de vapeur installé, détecte le début de l'ébullition
#define CHANGE_POWER_MODE_STEAM_TEMP 39
Lorsque la température du capteur de vapeur (ou celle du capteur supérieur de l'élément de colonne) atteint 39°, Samovar donne au régulateur l'ordre « arrêter la montée en température » et règle sur le régulateur la tension indiquée dans la première ligne du programme de soutirage. En mode distillation, Samovar utilise cette même température du capteur de vapeur pour détecter le début de l'ébullition. Dans le configurateur : « Températures » («Температуры»), « Température de fin de montée en température, °C » («Температура перехода из разгона, °C»).
 
//Température du capteur du bouilleur à laquelle la vanne d'arrivée d'eau s'ouvre et la pompe d'alimentation en eau démarre
#define OPEN_VALVE_TANK_TEMP 77
À une température du bouilleur de 77°, l'ordre d'ouvrir la vanne d'arrivée d'eau est donné, le signal de commande PWM de démarrage de la pompe est envoyé en même temps, et un message est adressé à l'opérateur pour qu'il ouvre l'eau.
Le message est envoyé dans tous les cas, même si ni pompe ni vanne ne sont utilisées, ou si l'eau est déjà ouverte.
 
#define DELTA_T_CLOSE_VALVE 20
//L'écart entre la T de refroidissement de l'eau définie et la T de l'eau, jusqu'auquel la pompe continue de tourner après la fin du processus en modes distillation et rectification. La valeur est en degrés C°, elle peut être modifiée.  Il est fortement déconseillé de la désactiver.  (pour plus de détails, voir ici)
 
//Valeur basse (en pourcentage) du régulateur PWM de la pompe. Choisissez une valeur qui assure un débit d'eau
#define PWM_LOW_VALUE 10
Comme on le sait, un moteur a besoin d'une tension plus élevée pour démarrer que pour continuer à tourner. Cette ligne définit la valeur minimale possible (en pourcentage) à laquelle le moteur peut maintenir la pompe d'alimentation en eau en marche sans s'arrêter.
 
//Valeur basse (en pourcentage) à partir de laquelle le régulateur PWM de la pompe commence à fonctionner. Choisissez une valeur qui démarre le moteur à coup sûr
#define PWM_START_VALUE 40
La valeur en % de la tension nominale à laquelle le moteur de la pompe démarre à coup sûr.
Autrement dit, si votre pompe (à condition qu'elle soit déjà installée dans le système et remplie de liquide) démarre de façon fiable sous une tension de  6 volts ou plus, et ne démarre pas en dessous, alors pour sa tension nominale de 12 volts cela représente 50 % de la valeur nominale. Le nombre 40 doit donc être remplacé par 50.
 
//Correction de l'angle de rotation du servomoteur.
int8_t servoDelta[11] = {0, -2, -3, -4, -3, -2, 0, 0, 0, 0, -2};
Correction de l'angle de rotation du servomoteur du plateau de soutirage pour un positionnement précis. Elle est indiquée en degrés. Chaque position est corrigée individuellement. Elle ne dépend pas de la correction des positions voisines.
Par exemple, si le bras a « dépassé » la position n° 2 et que nous avons défini moins 10°, cette valeur (-10) n'a pas à être prise en compte pour corriger la position n° 3.
 
//Écart entre la température cible et la température actuelle (pour les modes Bière et sous vide) jusqu'auquel le chauffage fonctionne à pleine puissance (en mode montée en température).
#define HEAT_DELTA 1
Pour les modes Bière et sous vide. La valeur est indiquée en degrés Celsius. Ce paramètre concerne la résistance principale. Il signifie que le chauffage fonctionne à pleine puissance tant que l'écart entre la température réelle et celle définie dans la ligne du programme d'empâtage est supérieur à 1°. Dès que l'écart devient inférieur ou égal à celui indiqué dans #define HEAT_DELTA, le régulateur reçoit l'ordre de réduire le chauffage afin d'atteindre la température définie en douceur et/ou de ne pas trop la dépasser.
Si vous avez une résistance assez puissante, augmentez la valeur pour ne pas « dépasser » la température cible.
 
//Si l'écart entre la température cible et la température actuelle (pour les modes Bière et sous vide) est supérieur à la valeur définie, alors, avec un régulateur commandé par UART, le relais n° 4 enclenche en plus la résistance d'appoint ; lorsque l'écart est plus faible, la résistance d'appoint se coupe
#define ACCELERATION_HEATER_DELTA 4
Pour les modes Bière et sous vide. La valeur est indiquée en degrés Celsius. Le paramètre concerne exclusivement la résistance supplémentaire.
Si la température du bouilleur est inférieure à la cible (ici de 4°), la résistance supplémentaire s'enclenche.
 
//Température d'ébullition (pour le mode Bière)
#define BOILING_TEMP 98.9
Pour les modes Bière et sous vide. La valeur est indiquée en degrés Celsius. Elle est définie manuellement et indique à Samovar à quelle température l'ébullition réelle a commencé dans le bouilleur de votre équipement. Cette valeur influe sur l'algorithme de fonctionnement des résistances principale et supplémentaire
 
//Température de fin de distillation par défaut
#define DEFAULT_DIST_TEMP 99.9
Pour le mode distillation. La température du bouilleur à laquelle la conduite se termine, si le programme de distillation ne définit pas d'autre valeur. Dans le configurateur : « Températures » («Температуры»), « Température de fin de distillation, °C » («Температура завершения дистилляции, °C»).
 
 
Paramètres d'utilisation des sous-systèmes de Samovar
 
#define SAMOVAR_USE_BLYNK                   //utiliser Blynk dans le projet
Si vous n'utilisez pas Blynk, cette ligne doit être mise en commentaire avec //.
 
#define BLYNK_SAMOVAR_TOOL "samovar-tool.ru" //utiliser le serveur Blynk gratuit samovar-tool.ru au lieu du cloud Blynk
Si vous utilisez un serveur Blynk payant et non le serveur fourni par le développeur, la ligne doit être mise en commentaire .
 
//#define USE_MQTT    //envoyer les mesures à votre propre broker MQTT
 Ce paramètre n'est pas nécessaire pour enregistrer les journaux dans le cloud : si le jeton de l'appareil est défini dans les paramètres et que SAMOVAR_USE_BLYNK est activé, le journal et les messages de Samovar partent d'eux-mêmes vers le serveur samovar-tool.ru. Inscrivez-vous sur le site www.samovar-tool.ru et saisissez le jeton de l'appareil en modifiant votre profil ; les journaux seront alors accessibles sur le site via le menu : Utilisateur - Journaux. Plus de détails dans la section - Journaux et graphiques dans le cloud.
USE_MQTT est un envoi distinct et facultatif d'une ligne de mesures abrégée vers un broker MQTT quelconque (sans TLS, toutes les 4 secondes pendant un processus et toutes les 5 secondes au repos). Cette ligne ne figure pas dans Samovar_ini.h : le paramètre s'active dans le configurateur (section « Réseau » («Сеть») : « Serveur MQTT » («Сервер MQTT»), « Port MQTT » («Порт MQTT»), « Utilisateur MQTT » («Пользователь MQTT»), « Mot de passe MQTT » («Пароль MQTT»), « Topic MQTT » («Топик MQTT»)) ou dans user_config_override.h, où MQTT_SERVER, MQTT_PORT, MQTT_USER, MQTT_PASSWORD et MQTT_TOPIC doivent être définis ; sans eux, une compilation avec USE_MQTT s'arrête sur une erreur.
 
Choix du régulateur de puissance
Dans le fichier Samovar_ini.h, le choix se fait par des lignes ordinaires :
#define SAMOVAR_USE_POWER
//#define KVIC_USE_9600
//#define SAMOVAR_USE_RMVK
//#define SAMOVAR_USE_SEM_AVR
Pour une compilation avec l'Arduino IDE, laissez les lignes ainsi :
Le paramètre KVIC_USE_9600 ne concerne que le KVIC : décommentez-le pour un régulateur dont la vitesse UART est de 9600. Si le régulateur utilise 38400, laissez la ligne en commentaire.
Pour une compilation avec PlatformIO, il n'est pas nécessaire de modifier ces lignes à la main : choisissez un environnement prêt à l'emploi, Samovar, Samovar_no_power, Samovar_rmvk ou Samovar_sem (il existe aussi Samovar_s3 pour la carte ESP32-S3, Samovar_lua et Samovar_alarm_button). Le configurateur choisit lui-même l'environnement d'après le groupe « Régulateur de puissance » («Регулятор мощности») (Ne pas utiliser («Не использовать») / KVIC / RMVK / SEM_AVR) et la carte. Les détails figurent dans les instructions Compilation et flashage avec PlatformIO.
Une description détaillée de l'équipement est donnée dans la section Régulateurs de tension utilisés.
 
Paramètres pour la NBK
#define NBK_MULT_PAUSE_OVERFLOW 2 // nombre d'inerties utilisées comme pause après l'engorgement
#define NBK_PUMP_LIMIT 30 // débit maximal de la pompe à moût pour l'Optimisation, l/h
#define NBK_WORK_PRESSURE_RATIO 0.5f // plafond de pression de travail = une fraction de la pression d'engorgement
#define NBK_PRESSURE_MARGIN 5 // mm Hg en dessous de la pression au moment de l'engorgement lors de l'apprentissage du plafond
//#define USE_NBK_DELTA_PRESSURE // correction de la température de la vinasse d'après la pression dans l'évacuation de la vinasse
//#define USE_NBK_END_BY_STEAM_RISE // terminer le fonctionnement de la NBK lorsque la T de vapeur a augmenté de NBK_END_STEAM_RISE par rapport au minimum
#define NBK_END_STEAM_RISE 5.0f // seuil de hausse de la T de vapeur (°C) pour USE_NBK_END_BY_STEAM_RISE
Nécessaires uniquement pour le mode colonne à moût continue ; dans le configurateur : section « NBK » («НБК»). Si la NBK n'est pas utilisée, laissez-les tels quels. Plus de détails dans la section NBK.
 
#define SAMOVAR_USE_POWER_START_TIME 2000    //délai avant l'envoi de la commande de montée en température au régulateur. Assure la fermeture  « à froid » du circuit de puissance par le contacteur.
Pour éviter un arc électrique sur les contacts de puissance du contacteur.   Après la commande « Allumer le chauffage » («Включить нагрев»), le relais n° 1 s'enclenche et alimente le contacteur, qui à son tour ferme le circuit de puissance de la résistance. Après le temps défini en millisecondes, le régulateur applique la tension.
L'extinction se fait dans l'ordre inverse. Le régulateur coupe d'abord la tension, puis, après un délai, le contacteur s'ouvre.
(Voir Algorithme de mise sous tension/hors tension de la charge)
 
#define LCD_RESET_PERIOD_MS 240000UL    //période (ms) de la réinitialisation périodique de l'écran LCD, 4 minutes
Protection contre le « blocage » de l'écran sur l'I2C. Inutile de la modifier. Dans le configurateur : « Équipement » («Оборудование»), « Période de réinitialisation de l'écran, ms » («Период сброса дисплея, мс»).
 
#define USE_WATERSENSOR                      //utiliser le débitmètre d'eau de refroidissement. S'il est utilisé et qu'il n'y a pas d'eau pendant le temps défini, Samovar éteint le chauffage de la colonne
Le débitmètre fonctionne sur le principe du capteur à effet Hall. Si le liquide de refroidissement circule, Samovar reçoit des impulsions périodiques. S'il n'y a pas d'impulsions ou si elles arrivent trop rarement, Samovar éteint le chauffage et envoie une alerte.
 
#define WF_CALIBRATION 98                    //Valeur pour le débitmètre F=98*Q(L/min) ; pour un autre capteur, définissez une autre valeur.
Correction du débitmètre. Si 1 litre d'eau traverse le capteur, celui-ci émet 5880 impulsions. En réalité, le nombre d'impulsions par litre varie selon le débit d'eau. La correction se fait en modifiant la valeur 98.
 
#define WATER_FLOW_MIN_PULSES 7              //Le débit est considéré comme réel si le nombre d'impulsions par cycle n'est pas inférieur à ce seuil
Filtre les impulsions isolées du débitmètre lorsque l'eau est fermée. Si Samovar voit un débit là où il n'y en a pas, augmentez la valeur ; s'il éteint le chauffage avec un faible débit, diminuez-la. Dans le configurateur : « Pompes » («Насосы»), « Minimum d'impulsions de débit » («Минимум импульсов потока»).
 
#define USE_HEAD_LEVEL_SENSOR                //utiliser le capteur de niveau de reflux dans la tête (capteur P-N-P). S'il est utilisé, au déclenchement du capteur, la puissance est réduite de 1*PWR_FACTOR (pour KVIC : 1 V, pour RMVK : 2 V ; pour SEM_AVR : de 3 % de la valeur actuelle)
Utilisez un capteur de niveau de reflux dont la sortie passe à un niveau logique haut au déclenchement.
 
#define IGNORE_HEAD_LEVEL_SENSOR_SETTING //Si le capteur de reflux est utilisé, ignorer la commande de désactivation du capteur dans l'interface WEB. (Si vous la mettez en commentaire, une case à cocher apparaît dans l'interface, dans l'onglet Réglages («Настройки»), qui permet d'activer ou de désactiver l'utilisation du capteur de reflux.)
 

Par exemple.
Si la ligne
//define USE_HEAD_LEVEL_SENSOR // utiliser le capteur de niveau de reflux... est en commentaire, le capteur n'est pas utilisé, et l'état de la ligne suivante (en commentaire ou non) n'a pas d'importance.
Si la ligne #define USE_HEAD_LEVEL_SENSOR est décommentée, l'état de la ligne suivante est pris en compte :

  #define IGNORE_HEAD_LEVEL_SENSOR_SETTING -  Si elle est décommentée, l'interface WEB ne comporte pas de case de commande du capteur de reflux.   Le capteur ne peut donc pas être désactivé depuis  l'interface WEB.
Si //#define IGNORE_HEAD_LEVEL_SENSOR_SETTING est en commentaire, l'utilisation  du capteur de niveau de reflux peut être  rapidement 
activée et désactivée (point 5) depuis l'interface WEB.

 
//#define WHLS_HIGH_PULL                       //utiliser un capteur de niveau de liquide N-P-N
Utilisez un capteur de niveau de reflux dont la sortie passe à un niveau logique bas au déclenchement.
  
#define USE_WATER_PUMP                       //utiliser la commande PWM de la pompe à eau et/ou l'enclenchement de l'agitateur pour le mode Bière
Si la pompe de maintien automatique de la TC n'est pas utilisée et que l'agitateur du mode Bière n'est pas raccordé, la ligne doit être mise en commentaire. Dans le configurateur : « Pompes » («Насосы»), « Commander la pompe à eau ou l'agitateur » («Управлять насосом воды или мешалкой»).
 
//#define USE_WATER_VALVE LOW                  //utiliser la commande d'une vanne pour régler la pression d'eau
Lorsqu'une vanne de dérivation est utilisée, la ligne doit être décommentée. La vanne est raccordée à la place de la pompe. Elle fonctionne sur le principe du thermostat. Si la température dépasse la valeur définie, la vanne s'ouvre ; lorsque la température redescend en dessous, elle se ferme. Plus de détails ici.
Si une vanne normalement fermée est utilisée sur la ligne de dérivation, la valeur LOW doit être remplacée par HIGH.
Si la TC est réglée manuellement ou par un appareil tiers, les deux lignes doivent être mises en commentaire.
 
//#define USE_ALARM_BTN                      //utiliser le bouton d'arrêt d'urgence.
Un appui coupe l'arrivée d'eau et l'alimentation. Vous pouvez l'utiliser en installant des capteurs de fuite (un nombre illimité d'appareils à « contacts secs » raccordés en parallèle est admis) ou un simple bouton (qui peut aussi être raccordé en parallèle avec les capteurs)
 
#define USE_BODY_TEMP_AUTOSET              //utiliser la correction automatique de la T du cœur pour le premier programme de soutirage du cœur ou de pré-engorgement après les têtes, ainsi que pour le programme de pré-engorgement s'il précède l'avant-dernier programme de soutirage du cœur ou de pré-engorgement
Dans la compilation standard de Samovar 7.00, cette fonction est activée. Elle ne peut pas être mise en commentaire : le micrologiciel active USE_BODY_TEMP_AUTOSET de force (Samovar.h). Dans le configurateur, elle se trouve dans la section « Rectification » («Ректификация») (« Correction automatique de la température du cœur » («Автокоррекция температуры тела»)), de même que la limite de hausse BODY_TEMP_AUTOSET_MAX_RISE (voir ci-dessous).
Le soutirage ne sera pas mis en pause à condition que :
Pour la ligne Cœur («Тело»). Une ligne Cœur suit directement une ligne Têtes et est elle-même suivie de deux lignes Cœur ou Pré-engorgement, dans n'importe quelle combinaison.
Pour la ligne Pré-engorgement («Предзахлеб»). Une ligne Pré-engorgement se trouve n'importe où dans le programme de soutirage et est suivie de deux lignes Cœur ou Pré-engorgement, dans n'importe quelle combinaison
 
//Choisissez le capteur de pression utilisé et ne laissez qu'une seule ligne. Les autres lignes doivent être mises en commentaire.
//#define USE_BMP180                           //utiliser le capteur de pression BMP180/BMP085
//#define USE_BMP280                           //utiliser le capteur de pression BMP280
//#define USE_BMP280_ALT                   //utiliser le capteur de pression BMP280 avec une adresse alternative
//#define USE_BME280                           //utiliser le capteur de pression BME280
#define USE_BME680                           //utiliser le capteur de pression BME680
Choisissez le capteur de pression atmosphérique utilisé et ne laissez qu'une seule ligne. Les autres lignes doivent être mises en commentaire. Si aucun capteur de pression atmosphérique n'est utilisé, vous pouvez mettre toutes les lignes en commentaire. Mais Samovar ne corrigera alors pas la température d'ébullition en fonction de la pression atmosphérique.
 
#define USE_BTN                              //utiliser le bouton
Utiliser le bouton universel de Samovar. Il est raccordé à la sortie D39 de l'ESP32. Un bouton pratique, mais s'il n'est pas utilisé, mieux vaut le désactiver.
 
#define USE_UPDATE_OTA      //utiliser ArduinoOTA pour la mise à jour par WiFi. Pratique pour le débogage ; en fonctionnement, cela charge davantage l'ESP32
Si une liaison série filaire est utilisée pour mettre à jour le croquis de l'ESP32, cette ligne peut être mise en commentaire.  La mise à jour par WiFi sera alors indisponible. Lors d'une compilation avec le noyau ESP32 version 3.x, le micrologiciel désactive ce paramètre de lui-même. Dans le configurateur : « Réseau » («Сеть»), « Autoriser la mise à jour par Wi-Fi » («Разрешить обновление по Wi-Fi»).
 
//#define USE_EXPANDER 0x20                    //utiliser l'extension de ports PCF8575
//#define USE_ANALOG_EXPANDER 0x48             //utiliser l'extension de ports analogiques PCF8591
//#define USE_LUA                              //utiliser Lua pour écrire des scripts de commande de Samovar et de l'extension de ports
Activation des extensions de ports et du langage de script Lua. Plus de détails dans la section Extension des possibilités
 
//Choix du type de capteur de pression utilisé dans la colonne. Un seul type peut être utilisé.
//#define USE_PRESSURE_XGZ 32                //utiliser le capteur de pression XGZP6897D (ou similaire). La valeur est le paramètre K du tableau du capteur
//#define USE_PRESSURE_1WIRE {0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x55}  //utiliser un capteur de pression en 1Wire
//#define USE_PRESSURE_MPX                    //utiliser le capteur de pression MPX5010D
Capteur de pression dans la colonne (à ne pas confondre avec le capteur de pression atmosphérique ci-dessus). Il est nécessaire pour la NBK et pour surveiller la pression dans la colonne. Ne décommentez qu'une seule ligne ; si deux ou trois sont décommentées, c'est le MPX5010D qui est utilisé. S'il n'y a pas de capteur, laissez les trois lignes en commentaire. Dans le configurateur : le groupe « Capteur de pression dans la colonne » («Датчик давления в колонне»).
 
//#define USE_STEPPER_ACCELERATION    //utiliser le démarrage et le freinage progressifs du moteur pas à pas
Active l'accélération progressive de la pompe de soutirage ; elle s'arrêtera aussi en douceur.
 
//#define STEPPER_REVERSE     //inverser le sens de rotation du moteur pas à pas
Si le moteur de la pompe de soutirage (Nema17) doit tourner dans l'autre sens, la ligne doit être décommentée.
 
//#define I2CStepperStepMl 16000            //nombre de pas par ml pour l'I2CStepper
Uniquement avec un module I2CStepper externe. Définit l'étalonnage initial de la pompe de soutirage (pas par millilitre). Dans le configurateur : « Moteur pas à pas » («Шаговый двигатель»), « Pas par ml pour l'I2CStepper » («Шагов на мл для I2CStepper»).
 
//#define COLUMN_WETTING                    //si un capteur de niveau de reflux est installé, au début de la rectification amener la colonne au pré-engorgement pour mouiller le garnissage
//#define WETTING_POWER 220                //tension/puissance du régulateur (pour SEM_AVR) pendant le mouillage du garnissage
Mouillage du garnissage avant la rectification. Fonctionne uniquement avec le capteur de niveau de reflux (USE_HEAD_LEVEL_SENSOR) : après la montée en température, Samovar maintient sur le régulateur la tension de la première ligne du programme (si elle n'est pas définie, 220 V ; pour SEM_AVR, WETTING_POWER), la réduit si nécessaire par paliers jusqu'à 80 % et attend le déclenchement du capteur de niveau de reflux, pendant 20 minutes au maximum. Dans les messages : « Début du mouillage du garnissage de la colonne » («Начало смачивания насадки колонны») et « Garnissage de la colonne mouillé avec succès ! » («Насадка колонны успешно смочена!»). Dans le configurateur : « Rectification » («Ректификация»), « Mouillage du garnissage avant la rectification » («Смачивание насадки перед ректификацией») et « Puissance de mouillage du garnissage » («Мощность смачивания насадки»).
 
 
//#define NOT_USE_INTERFACE_UPDATE              //ne pas mettre à jour l'interface au démarrage
Samovar  compare la version de l'interface installée localement avec la version disponible à distance et, si elles diffèrent, la met à jour.
Cette approche permet de conserver dans Samovar des fichiers avec vos propres développements. Une mise à jour locale écrase tout, alors qu'une mise à jour par internet ne met à jour que l'interface : les scripts et les paramètres sont conservés.
Pour une nouvelle version, il n'est pas nécessaire de téléverser l'interface ; elle se met à jour automatiquement.
Mais, comme il s'est avéré, quelque chose a changé et cela ne fonctionne pas chez tout le monde.
Si ce paramètre est décommenté, l'interface ne sera pas mise à jour par internet.
 
//#define KVIC_DEBUG                      //messages de débogage de l'échange avec le régulateur KVIC vers le moniteur série
Nécessaire uniquement pour diagnostiquer la communication avec le régulateur. Dans le configurateur : « Régulateur » («Регулятор»), « Messages de débogage KVIC » («Отладочные сообщения KVIC»).
 
Paramètres de l'algorithme de rectification
#define PAUSE_RESUME_HYSTERESIS_DELTA 0.07f  //hystérésis (°C) entre le seuil d'entrée en pause selon la T de vapeur/de colonne et le seuil de sortie
#define PROGRAM_ROW_STOP_PAUSE_LIMIT 3       //nombre de pauses d'arrêt pendant la ligne de programme en cours au-delà duquel le débit de base de la ligne est réduit automatiquement
#define PROGRAM_ROW_STOP_PAUSE_SPEED_CUT_PCT 10  //de combien de % réduire le débit de base de la ligne lorsque PROGRAM_ROW_STOP_PAUSE_LIMIT est atteint
#define PROGRAM_DONE_AUTO_POWEROFF_MIN 30    //durée (min) de maintien de l'état « Exécution du programme terminée » («Выполнение программы завершено») (la pompe est arrêtée, le chauffage continue), après laquelle l'arrêt est automatique. 0 = arrêt immédiat
#define BODY_TEMP_AUTOSET_MAX_RISE 0.3f     //limite (°C) de la hausse automatique de la T du cœur au sein d'une ligne de programme
Les valeurs par défaut sont choisies pour une colonne type ; ne les modifiez pas sans nécessité. Dans le configurateur : section « Rectification » («Ректификация»).
 
Paramètres du mode BK
#define BK_STEAM_SETPOINT_MIN 30          //limite basse de la consigne de T de vapeur du déflegmateur BK (5e champ de la ligne de programme), °C ; 0 - eau à la main
#define BK_STEAM_SETPOINT_MAX 100         //limite haute de la consigne de T de vapeur du déflegmateur BK, °C
#define BK_WATER_ADJUST_PERIOD_MS 60000    //période du pas du régulateur d'eau BK, ms
#define BK_WATER_DEADBAND 0.2f            //zone morte (°C) autour de la consigne de vapeur BK
#define BK_WATER_PWM_STEP 30              //pas du régulateur PWM d'eau BK (sur 1023)
Limites de consigne et pas de la régulation automatique de l'eau en mode colonne à moût. Dans le configurateur : section « BK » («БК»).
 
 
 Après avoir modifié le fichier, vous devez téléverser à nouveau le croquis dans l'ESP32. Pour cela, cliquez sur la flèche de la barre supérieure de l'Arduino IDE et attendez la fin du téléversement.
 
 
Votre Samovar est prêt à fonctionner.
 
Remarque.
Désormais, lorsque vous installez une nouvelle version, vous n'avez pas besoin de modifier Samovar_ini.h à chaque fois.
Lors d'une mise à jour via l'Arduino IDE, comparez le nouveau et l'ancien Samovar_ini.h et ne reportez que vos propres valeurs. Ne remplacez pas entièrement le nouveau fichier par l'ancien : une nouvelle version peut contenir des paramètres sans lesquels la configuration serait incomplète. Le configurateur stocke les différences de l'utilisateur séparément, dans user_config_override.h.
Il vaut mieux modifier le nouveau fichier lui-même plutôt qu'ajouter des lignes du nouveau code à l'ancien, afin d'éviter des erreurs accidentelles (voir Mise à jour du croquis).
Pour comparer et modifier, vous pouvez utiliser des programmes spécialisés capables de comparer deux fichiers différents en affichant visuellement leurs différences. 
 
Avertissement.
Il est recommandé de télécharger l'archive de la nouvelle version de Samovar depuis 
ce lien. Ce sera une version stable et testée.
 
________________________________________________________________________________________________________________
 
* Pour les développeurs. Une description des sections du croquis et un schéma fonctionnel  se trouvent sur github.com
 
 
 
 
 
 
 
 
 

Autres fichiers et lignes avec explications :
 
fichier Samovar_pin.h
Samovar 7.00: la constante TARGET_WATER_TEMP ne se trouve plus dans ce fichier. La température de l'eau maintenue par le régulateur PWM de la pompe est prise dans tous les modes (y compris la NBK) dans le champ « Consigne du capteur d'eau » («Уставка датчика воды») de l'onglet Réglages - Température («Настройки - Температура») ; si le champ est vide, le micrologiciel utilise 48°. Lorsque le processus est terminé et que la température de l'eau en sortie devient inférieure à la consigne de DELTA_T_CLOSE_VALVE (20° par défaut, voir ci-dessus), Samovar arrête la pompe, donne l'ordre de fermer la vanne d'eau et envoie une alerte indiquant qu'il faut couper l'eau.
 
fichier pumppwm.h
define PUMP_PWM_FREQ 15
Fréquence PWM minimale de la pompe de refroidissement, en hertz