JH63 2 Posted August 8, 2020 Bonsoir Gen Tu évoques dans ton premier post les platines moteurs pourront être reliées à la centrale va des câbles de type RJ45 Finalement quel est le type de connecteur retenu? ++ Share this post Link to post Share on other sites
Gen 2967 Posted August 9, 2020 Yop, Aucun, chacun mettra ce qu'il veux, moi je fourni juste le JST câblé..comme je fais pour tout mes montages. si il y a de la demande, je peux faire une chtite plaquette JST -> RJ45 que je fournirai avec, suffit de demander. moi j'utiliserai des GX16 étanches pour les gens qui me demanderaient des montages ++ GEN Share this post Link to post Share on other sites
Viker 32 Posted August 10, 2020 Le 08/08/2020 à 20:19, Gen a dit: Yop Comme dit précédemment je taffe sur le graphisme (j'ai cela en horreur !) La fenêtre principale est à 50% réalisée, un petit avant goût. ++ GEN Yop, c'est un bon début surtout pour quelqu'un qui a le graphisme en horreur. Courage ++ Viker 1 Share this post Link to post Share on other sites
Gen 2967 Posted August 11, 2020 Yop @Viker Merci. Ça commence à aller, je maitrise de plus en plus l'outil graphique. Page principale terminée. (mettez votre écran anti-bave svp ) Aller.. Plus que onze pages à faire.. ++ GEN 8 Share this post Link to post Share on other sites
Viker 32 Posted August 11, 2020 Yop, je regardais les écrans nextion et il y en a une tétrachier. La redboard supportera quel type de nextion? basic, enhanced, intelligent? ++ Viker Share this post Link to post Share on other sites
Gen 2967 Posted August 12, 2020 (edited) Yop @Viker le capacitif 10.1" ref NX1060P101_011 dans un premier temps ++ GEN Edited August 12, 2020 by Gen Share this post Link to post Share on other sites
Viker 32 Posted August 12, 2020 Yop ok, merci pour l'info. ++ Viker Share this post Link to post Share on other sites
JH63 2 Posted August 12, 2020 Ola, Je suis preneur si vous avez un lien pour être sûr du coup. @Gen Pourquoi dans un premier temps? Cela p évoluer ou on p partir la dessus? ++ Share this post Link to post Share on other sites
Gen 2967 Posted August 12, 2020 (edited) yop @JH63 Je ferai certainement mais bien plus tard une version 7" pour les gens avec peu de moyens Tout comme la version radio avec le module qui va bien avec.. (compatible avec la RED Board et les nextion) ++ GEN Edited August 12, 2020 by Gen 2 Share this post Link to post Share on other sites
Gen 2967 Posted August 14, 2020 Yop Je viens de terminer le premier onglet, par la suite je mettrai la couleur et les polices des chiffres à jour J'attaque la partie led maintenant. Sinon, j'ai reçu mes afficheurs de conso pour mon montage de boîtier A sa droite viendra se positionner l'afficheur LCD 4x20 J'ai finalement reçu tous les composants pour faire le montage de ma platine proto, dès que j'ai un peu de temps je commencerai à la souder ++ GEN 1 Share this post Link to post Share on other sites
Viker 32 Posted August 14, 2020 (edited) Yop, Il reste juste la place pour le lcd. L'afficheur LCD 4x20 donnera quoi comme info et y aura-t-il un paramétrage via ce lcd et genre un bouton rotatif ou tout se passera sur le nextion? ++ Viker Edited August 14, 2020 by Viker Share this post Link to post Share on other sites
Gen 2967 Posted August 14, 2020 Yop J'en sais encore rien, j'aviserai en fonction des ressources libres à la fin de la programmation, car il y aura une version filaire pour le nextion et une version radio Dans un premier temps le paramétrage ne se fera que par le Nextion le LCD affichera : l'adresse IP et la force du signal la date et l'heure de la dernière mise en route (pour voir si il n'y a pas eu un reboot dû à une coupure) etc.; sur l'autre indicateur, il y aura le voltage, l'intensité, la fréquence, la conso ++ GEN 2 Share this post Link to post Share on other sites
JH63 2 Posted August 14, 2020 Ola, J ai commencé à regarder ces écrans cela reste pas donné prix moyen 115e, je voudrais savoir si en plus de l écran il faut ce convertisseur ou simplement les 4 fils livré avec le nextion suffiront. ++ Share this post Link to post Share on other sites
Gen 2967 Posted August 15, 2020 Yop Rien de tout ça, je fourni le câble JST - JST ou JST - Fil avec la RED Board, (en fonction de si on câble l'écran à proximité ou à distance) dans sa version filaire. ++ GEN Share this post Link to post Share on other sites
Gen 2967 Posted August 15, 2020 (edited) Yop Je viens de terminer la soudure de tous les composants CMS (Composant monté en surface) Nettoyage et contrôle au microscope et au multimètre OK J'ai fais un petit test d'upload de programme et la partie FDTI (qui sert à programmer le contrôleur) et cela fonctionne. Donc pour le moment tout roule, je vais écrire une routine de test pour l'électronique et ensuite je pourrai commencer à souder tous les autres composants OUI je sais ma platine est verte, c'est mon prototype de test ++ GEN Edited August 15, 2020 by Gen 2 Share this post Link to post Share on other sites
Viker 32 Posted August 15, 2020 Quoi une GreenBoard de contrefaçon!!! Hop --> [ ] 2 Share this post Link to post Share on other sites
Gen 2967 Posted August 16, 2020 Yop Fait gaffe @Viker, ou pour toi j'en ferai une couleur CACA d'oie ! Nan mais :-) Bon, je viens de monter la partie alimentation et tout roule, j'ai bien toutes mes tensions de service 12v,10v,5v,3v3 Je rentre à 14v La partie alimentation J'ai également soudé un support de relais, pour voir que rien ne génait Je vais pouvoir commencer à tester l'électronique, je vais commencer par le RTC. Je n'utiliserai pas le RTC de l'écran car trop de dérives dans le temps @plus pour la suite des festivités Il me reste encore des circuits pour les retardataires ++ GEN 2 Share this post Link to post Share on other sites
Gen 2967 Posted August 20, 2020 (edited) Yop On passe à autre chose, je viens de terminer l'écriture de la librairie DataStorage, elle a été complètement revisitée par rapport à la classe utilisée dans le programme GENESYSYS Elle permet l'enregistrement automatique des données en mémoire. Cette librairie n'est valable que pour l'ESP32, Le fichier .h //************************************************************************************* // This library records all the temperature an humidity thresholds for a room // Settings are automatically saved // The constructor need 3 parameters of memory position // parameter 1 - int array of 9 memory position for recording temperature data // parameter 2 - int array of 9 memory position for recording humidity data // parameter 2 - int value memory position for growing mode selected (GROWING/FLOWERING) // !!!! This library only works with ESP32 !!!! //************************************************************************************* #ifndef DataStorage32_h #define DataStorage32_h #include <Arduino.h> #include <EEPROM.h> #define GDMIN 0 //Growing Day Min #define GDMAX 1 //Growing Day Max #define GNMIN 2 //Growing Night Min #define GNMAX 3 //Growing Night Max #define FDMIN 4 //Flowering Day Min #define FDMAX 5 //Flowering Day Max #define FNMIN 6 //Flowering Night Min #define FNMAX 7 //Flowering Night Max #define HYST 8 //Hysteresis #define GROWING 0 //Growing Mode #define FLOWERING 1 //Flowering Mode #define TEMPERATURE 0 #define HUMIDITY 1 #define MINIMUM 0 #define MAXIMUM 1 class DataStorage32 { public: DataStorage32(int TMEM[],int HMEM[],int MMEM); void writeFactorySettings(void); void loadDataFromMemory(void); void setTemperature(int type, int value); int getTemperature(int type); void setHumidity(int type, int value); int getHumidity(int type); void setMode(int value); int getMode(void); int getActualValue(int balise, int type, bool light, int mode); private: int temperatureFolder[9]; int humidityFolder[9]; int mode; protected: int T_MemoryPos[9]; int H_MemoryPos[9]; int modeMemoryPosition; void memWrite(int address, int value); int memRead(int address); }; #endif le fichier .cpp #include "DataStorage32.h" DataStorage32::DataStorage32(int TMEM[],int HMEM[],int MMEM) { memcpy(T_MemoryPos,TMEM, sizeof(T_MemoryPos)); memcpy(H_MemoryPos,HMEM, sizeof(H_MemoryPos)); modeMemoryPosition = MMEM; } void DataStorage32::writeFactorySettings(void) { this->setTemperature(GDMIN,20); this->setTemperature(GDMAX,28); this->setTemperature(GNMIN,18); this->setTemperature(GNMAX,22); this->setTemperature(FDMIN,20); this->setTemperature(FDMAX,26); this->setTemperature(FNMIN,18); this->setTemperature(FNMAX,20); this->setTemperature(HYST, 2); this->setHumidity(GDMIN,40); this->setHumidity(GDMAX,80); this->setHumidity(GNMIN,30); this->setHumidity(GNMAX,50); this->setHumidity(FDMIN,40); this->setHumidity(FDMAX,60); this->setHumidity(FNMIN,30); this->setHumidity(FNMAX,40); this->setHumidity(HYST, 5); this->setMode(GROWING); } void DataStorage32::loadDataFromMemory(void) { temperatureFolder[GDMIN]= this->memRead(T_MemoryPos[0]); temperatureFolder[GDMAX]= this->memRead(T_MemoryPos[1]); temperatureFolder[GNMIN]= this->memRead(T_MemoryPos[2]); temperatureFolder[GNMAX]= this->memRead(T_MemoryPos[3]); temperatureFolder[FDMIN]= this->memRead(T_MemoryPos[4]); temperatureFolder[FDMAX]= this->memRead(T_MemoryPos[5]); temperatureFolder[FNMIN]= this->memRead(T_MemoryPos[6]); temperatureFolder[FNMAX]= this->memRead(T_MemoryPos[7]); temperatureFolder[HYST] = this->memRead(T_MemoryPos[8]); humidityFolder[GDMIN] = this->memRead(H_MemoryPos[0]); humidityFolder[GDMAX] = this->memRead(H_MemoryPos[1]); humidityFolder[GNMIN] = this->memRead(H_MemoryPos[2]); humidityFolder[GNMAX] = this->memRead(H_MemoryPos[3]); humidityFolder[FDMIN] = this->memRead(H_MemoryPos[4]); humidityFolder[FDMAX] = this->memRead(H_MemoryPos[5]); humidityFolder[FNMIN] = this->memRead(H_MemoryPos[6]); humidityFolder[FNMAX] = this->memRead(H_MemoryPos[7]); humidityFolder[HYST] = this->memRead(H_MemoryPos[8]); mode = this->memRead(modeMemoryPosition); } void DataStorage32::setTemperature(int type, int value) { temperatureFolder[type] = value; this->memWrite(T_MemoryPos[type],value); } int DataStorage32::getTemperature(int type) { return temperatureFolder[type]; } void DataStorage32::setHumidity(int type, int value) { humidityFolder[type] = value; this->memWrite(H_MemoryPos[type],value); } int DataStorage32::getHumidity(int type) { return humidityFolder[type]; } void DataStorage32::setMode(int value) { mode = value; this->memWrite(modeMemoryPosition,mode); } int DataStorage32::getMode(void) { return mode; } int DataStorage32::getActualValue(int balise, int type, bool light, int mode) { // balise (MINIMUM/MAXIMUM) // type (TEMPERATURE/HUMIDITY) // light (false/true) // mode (GROWING/FLOWERING) int index = 0; if(mode==FLOWERING){index+=4;} if(!light){index+=2;} if(balise==MAXIMUM){index+=1;} if(type==TEMPERATURE) { return temperatureFolder[index]; } else { return humidityFolder[index]; } } void DataStorage32::memWrite(int address, int value) { byte temp = (value & 0xFF); EEPROM.write(address,temp); EEPROM.commit(); } int DataStorage32::memRead(int address) { return EEPROM.read(address); } ++ GEN Edited August 20, 2020 by Gen 3 Share this post Link to post Share on other sites
Gen 2967 Posted August 22, 2020 (edited) Yop les growers. J'ai commencé à tout souder et fait les premiers tests de l'électronique, toutes mes puces sont reconnues, c'est déjà une bonne chose J'ai fait quelques modifications au circuit, j'ai viré la puce TXB0108, c'est une grosse daube, je suis passé à mon ancienne méthode de level shiffter via des BSS138 et sa fonctionne nickel, j'ai également rajouté une connectique "module" pour y brancher dans le futur l'HYDRO-GEN, et ainsi les gens ne devront pas se faire ch...; avec des connecteurs Dupont, j'ai également repositionné les condensateurs. (je vais devoir refaire faire mes circuits, sniff, mais c'est la vie, c'est cela le prototypage) Par contre à la recommande, je demanderai à la société de souder tous les CMS (composant monté en surface) car j'en ai vraiment chi.. des boulons de 20. De plus mon four à souder est trop petit, j'ai dû terminer les soudures au fer à air chaud, une galère. Bref, jusqu'à maintenant tout roule. Quelques tofs Et une fois positionné dans son boîtier Tout a été calculé au poil de cul près et le boîtier se referme parfaitement Plus besoin de tournevis (sauf pour fixer le circuit), toutes les connectiques sont à clipser et tous les raccords sont en JST XH 2,54mm A bientôt pour la suite Si vous avez des com's ou des questions, n'hésitez pas ++ GEN Edited August 22, 2020 by Gen 2 2 Share this post Link to post Share on other sites
Gen 2967 Posted August 22, 2020 Yop Suite des tests -L'horloge OK -La commande des 10 relais OK -Les 4 commandes moteurs à 5 vitesses OK il me reste encore à tester : les sondes, et les 2 générateurs PWM 10V ++ GEN Share this post Link to post Share on other sites
Gen 2967 Posted August 23, 2020 Yop Quelques news, j'ai passé la journée complète à tester l'électronique... Tout allait bien jusqu'à...... je branche l'écran. Il consomme beaucoup, quand je dis beaucoup, c'est vraiment beaucoup, le 10.1" faut compter entre 0.8 et 0.9 A en 5V à lui seul !! Moralité même en passant sur un régulateur 2A L78S05, la baisse de tension produit beaucoup trop de chaleur, ce composant aurait été trop sollicité et aurait fini par claquer, j'ai essayé avec différents radiateur, mais rien n'y fait. Même en mettant des régulateurs en cascade, le problème en amont aurait été le même. J'ai donc radicalement modifié la partie alim avec un module IRM-10, qui lui me fournira ce que j'ai besoin juste pour l'écran. Tant qu'à faire, j'ai modifié les sorties PWM pour le pilotage des LEDS on peut maintenant choisir soit 12V soit 10V, elle n'est pas belle la vie ? Le proto est envoyé en prod, je devrai le recevoir vendredi D'ici là, je retourne à la programmation. ++ GEN 2 Share this post Link to post Share on other sites
JH63 2 Posted August 23, 2020 Ola, Joli taf, tu as bien du galerer pour très ces soudures,tu n intègre pas la protection par un différentiel en amont de ts cela ds ton coffret. Beau BB ++ Jh Share this post Link to post Share on other sites
Gen 2967 Posted August 23, 2020 Yop Non, plus de place, ce sera à charge des gens.. ++ GEN Share this post Link to post Share on other sites
Viker 32 Posted August 24, 2020 Yop, je crois que c'est une bonne idée de faire faire la soudure des CMS car même avec le four ce doit être long. Quand tu auras la carte finale le masque pour déposer la soudure ne sera pas un luxe. Courage! ++ Viker Share this post Link to post Share on other sites
Gen 2967 Posted August 24, 2020 Yop @Viker Mais je taffe déjà avec des stencils et un support à stencils, ensuite je place les composant avec une brucelle et ensuite zou au four le soucis c'est que le circuit est plus grand que la zone couverte par les tubes IR, donc les extrémités ne sont pas "cuites", je dois donc repasser au fer à air chaud par la suite voila pour l'explication ++ GEN Share this post Link to post Share on other sites