Gen 2 808 Posté(e) août 12, 2020 Auteur Partager Posté(e) août 12, 2020 (modifié) Yop @Viker le capacitif 10.1" ref NX1060P101_011 dans un premier temps ++ GEN Modifié août 12, 2020 par Gen Lien à poster Partager sur d’autres sites
Viker 147 Posté(e) août 12, 2020 Partager Posté(e) août 12, 2020 Yop ok, merci pour l'info. ++ Viker Lien à poster Partager sur d’autres sites
JH63 25 Posté(e) août 12, 2020 Partager Posté(e) août 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? ++ Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 12, 2020 Auteur Partager Posté(e) août 12, 2020 (modifié) 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 Modifié août 12, 2020 par Gen 2 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 14, 2020 Auteur Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
Viker 147 Posté(e) août 14, 2020 Partager Posté(e) août 14, 2020 (modifié) 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 Modifié août 14, 2020 par Viker Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 14, 2020 Auteur Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
JH63 25 Posté(e) août 14, 2020 Partager Posté(e) août 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. ++ Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 15, 2020 Auteur Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 15, 2020 Auteur Partager Posté(e) août 15, 2020 (modifié) 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 Modifié août 15, 2020 par Gen 2 Lien à poster Partager sur d’autres sites
Viker 147 Posté(e) août 15, 2020 Partager Posté(e) août 15, 2020 Quoi une GreenBoard de contrefaçon!!! Hop --> [ ] 2 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 16, 2020 Auteur Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 20, 2020 Auteur Partager Posté(e) août 20, 2020 (modifié) 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 Modifié août 20, 2020 par Gen 3 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 22, 2020 Auteur Partager Posté(e) août 22, 2020 (modifié) 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 Modifié août 22, 2020 par Gen 2 2 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 22, 2020 Auteur Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 23, 2020 Auteur Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
JH63 25 Posté(e) août 23, 2020 Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 23, 2020 Auteur Partager Posté(e) août 23, 2020 Yop Non, plus de place, ce sera à charge des gens.. ++ GEN Lien à poster Partager sur d’autres sites
Viker 147 Posté(e) août 24, 2020 Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
Gen 2 808 Posté(e) août 24, 2020 Auteur Partager Posté(e) août 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 Lien à poster Partager sur d’autres sites
Messages recommandés