Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Portail lourd motorisé 2 vantaux 24v
Pour du matériel exposé à tous les vents et aux salissures, il me semble qu'il faut du simple et costaud si l'on veut que ça tienne le choc dans la durée. Soit des fins de courses dignes de ce nom, soit des capteurs de proximité calibre industrie. Le problème reste le prix de ce matos. Mais comme le dit si justement le dicton : le prix s'oublie, la qualité reste 
Portail lourd motorisé 2 vantaux 24v
Bonjour à tous,
Retour sur vos remarques : il y a du maille
Paul précise : Utiliser des réglages ajustables "en live" est à écarter. Donc il faut impérativement prévoir leur enregistrement (en RAM). Et toujours selon le (bon) conseil prodigué par Paul : avec des poussoirs dédiés.
Par ailleurs Paul précise aussi qu'un réglage étendu de la fréquence PWM via une tension analogique est TRES limité.
Sauf peut-être à jouer sur le prescaler... J'ai tenté, et je confirme : c'est impossible
Mais pourquoi, me direz-vous, vouloir prévoir de tels réglages ?
C'est le même choix que pour les précédents projets (clavier et chaudière) :
On doit pouvoir intervenir sur site sans nécessiter un PC pour agir au niveau du soft.
Conclusion (unanime?) : Recourir à du déjà fait aux projets précédents ; alors Exit les ajustable RV5 à RV8 !
Ce sera donc la version V.8.0.0 (schéma joint)
=> Ajout des poussoirs Sx1 et Sx2 aux entrées RA1 et RA2 du PIC
=> Sortie INTB pin19 du MCP à l'entrée RA0 du PIC (PGD en RB7 libre)
=> Sortie TTL du module BAL à l'entrée RA3 du PIC (PGC en RB6 libre)
On détecte le lâcher de poussoir(s) :
=> Sx1 + Sx2 lâchés après 4s : On entre en prog (data 'PROG'=1); Led bleu sur carte (L5) allumé fixe.
=> Sx1 lâché après 2s : On passe au réglage suivant (le dernier reboucle sur le premier).
=> Sx2 lâché après 2s : On sauve ; Led rouge sur carte (L6) allumé 1s.
=> Sx1 lâché avant 1s : On incrémente.
=> Sx2 lâché avant 1s ; On décrémente.
=> EXIT par SW0 (RESET MCU) : data 'PROG'=1 ; Led bleu sur carte (L5) éteint
Note : Je n'ai pas retravaillé les affichages au LCD
Reste à déterminer les pas et l'étendue des différentes plages de réglages...
Pour info, je joins mon fichier de travail sous Excel
Concernant les remarques soulevées pour la tempo : Quel est son rôle exact ?
D'abord, il y a plusieurs besoins de tempo, mais de faible durée unique.
=> Retour inverse en cas de détection obstacle.
Mais aussi, pour une utilisation plus universelle :
=> Fin de mouvement en l'absence de butées en fin d'ouverture (sachant que chez moi j'ai ces butées).
=> Décalage des Vantaux (sachant que chez moi j'utilise le jeu des 2 cames axiales de pilotage)
En aucun cas la temporisation ne gère le mouvement global du portail.
Enfin, rappel des limites ampèremétriques : il y en 4.
=> Amax_INA :
C'est la limite globale générale.
Elle est directement traitée par les INA (chez moi : 6A)
=> Amax_BRK :
C'est la limite en mode blocage en butée.
Son réglage maxi est toujours inférieur de 1A à Amax_INA.
=> Amax_LW :
C'est la limite associée à la Vitesse Lente réglée (Duty_LW).
Elle est donc calculée en fonction de ce réglage.
=> Amax_HI :
C'est la limite associée à la Vitesse Rapide réglée (Duty_HI)
Elle est donc calculée en fonction de ce réglage.
Bref, une sacrée remise à plat : Merci de vos conseils avant de m'attaquer à définir les plages.
A+
Retour sur vos remarques : il y a du maille
Paul précise : Utiliser des réglages ajustables "en live" est à écarter. Donc il faut impérativement prévoir leur enregistrement (en RAM). Et toujours selon le (bon) conseil prodigué par Paul : avec des poussoirs dédiés.
Par ailleurs Paul précise aussi qu'un réglage étendu de la fréquence PWM via une tension analogique est TRES limité.
Sauf peut-être à jouer sur le prescaler... J'ai tenté, et je confirme : c'est impossible
Mais pourquoi, me direz-vous, vouloir prévoir de tels réglages ?
C'est le même choix que pour les précédents projets (clavier et chaudière) :
On doit pouvoir intervenir sur site sans nécessiter un PC pour agir au niveau du soft.
Conclusion (unanime?) : Recourir à du déjà fait aux projets précédents ; alors Exit les ajustable RV5 à RV8 !
Ce sera donc la version V.8.0.0 (schéma joint)
=> Sortie INTB pin19 du MCP à l'entrée RA0 du PIC (PGD en RB7 libre)
=> Sortie TTL du module BAL à l'entrée RA3 du PIC (PGC en RB6 libre)
On détecte le lâcher de poussoir(s) :
=> Sx1 + Sx2 lâchés après 4s : On entre en prog (data 'PROG'=1); Led bleu sur carte (L5) allumé fixe.
=> Sx1 lâché après 2s : On passe au réglage suivant (le dernier reboucle sur le premier).
=> Sx2 lâché après 2s : On sauve ; Led rouge sur carte (L6) allumé 1s.
=> Sx1 lâché avant 1s : On incrémente.
=> Sx2 lâché avant 1s ; On décrémente.
=> EXIT par SW0 (RESET MCU) : data 'PROG'=1 ; Led bleu sur carte (L5) éteint
Note : Je n'ai pas retravaillé les affichages au LCD
Reste à déterminer les pas et l'étendue des différentes plages de réglages...
Pour info, je joins mon fichier de travail sous Excel
Concernant les remarques soulevées pour la tempo : Quel est son rôle exact ?
D'abord, il y a plusieurs besoins de tempo, mais de faible durée unique.
=> Retour inverse en cas de détection obstacle.
Mais aussi, pour une utilisation plus universelle :
=> Fin de mouvement en l'absence de butées en fin d'ouverture (sachant que chez moi j'ai ces butées).
=> Décalage des Vantaux (sachant que chez moi j'utilise le jeu des 2 cames axiales de pilotage)
En aucun cas la temporisation ne gère le mouvement global du portail.
Enfin, rappel des limites ampèremétriques : il y en 4.
=> Amax_INA :
=> Amax_BRK :
=> Amax_LW :
=> Amax_HI :
Bref, une sacrée remise à plat : Merci de vos conseils avant de m'attaquer à définir les plages.
A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Portail lourd motorisé 2 vantaux 24v
- paulfjujo

Maître- Messages : 3259
- Âge : 75
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour à tous
Oui, De nos jours, il faut envisager qu'un (ou des) fada , puisse(nt) gentillement utiliser ,
une bombe à impulsion électromagnétique (IEM),
ou des SPAMS, VERS, VIRUS, BUGS et autre cochonneries.
je suis étonné que la solution "type Egalisation des sondes chaudieres"
ne te satisfait pas, car dans ce cas on garde quand meme la possibilite de reglage par les potars
et que une fois jugé reglés OK, on valide les consignes potars -> stock en eeprom
puis au prochain reset usage de ces valeurs stokées en eeprom -> puis RAM de travail
au lieu de relire en permanence les valeurs analoqique des potars.
Cela necessiste une sequence particuliere pour appui d'un BP ou etat d'une ou plusieurs entrees existantes
choisies specifiquement pour RENTRER dans cette sequence " reglages via potars"
L'autre solution que tu envisages est bien sur possible, mais assez lourde comparativement
donc plus d'entree ANA avec cette solution.
c'est jouable aussi...
On détecte le lâcher de poussoir(s) : (chronometrage de la duree d'appui superieure à x Sec )
=> Sx1 + Sx2 lâchés après 4s : On entre en prog "Parametrage" (data 'PROG'=0); Led bleu sur carte (L5) allumé fixe.
=> Sx1 lâché après 2s : On passe au réglage suivant (le dernier reboucle sur le premier).
=> Sx2 lâché après 2s : On sauve en eeprom; Led rouge sur carte (L6) allumé 1s.
=> Sx1 lâché avant 1s : On incrémente.
=> Sx2 lâché avant 1s ; On décrémente.
eventuellement , on verifie le tout via
=> Sx1 lâché après 2s affichage des reglages sur LlCD
Sx1 + Sx2 lâchés après 4s :
on memorise les changements en Eeprom , arme le Flag en eeprom ('PROG'=99)
ex: Adresse epprom 0000=PROGR=99
avec Flag PROG=0 au chargement du programme *.hex
on sort de la boucle programmation "Parametrage"
Led bleu sur carte (L5) éteint
attente appui sur
=> EXIT par SW0 (RESET MCU) et data 'PROG'=99 ;
.... ou d'office via instruction Reset()
au lancement programme on teste le flag PROGR en eeprom @0000
si 00 On entre d'office en Progr Parametrage
(à moins de definir des parametres "USINE" par defaut,en dur dans le programme)?
si 99 on continue en sequence (Strap operation parametrage)
et on recupere ceux ci depuis l'eeprom ..-> RAM
sinon on peut toujours re-rentrer en parametrage via S1 S2 appuyés > 4sec apres un reset
Des remarques d'autres Fantaspiciens seraient aussi bienvenues !
Babar64 a écrit :On doit pouvoir intervenir sur site sans nécessiter un PC pour agir au niveau du soft.
Oui, De nos jours, il faut envisager qu'un (ou des) fada , puisse(nt) gentillement utiliser ,
une bombe à impulsion électromagnétique (IEM),
ou des SPAMS, VERS, VIRUS, BUGS et autre cochonneries.
je suis étonné que la solution "type Egalisation des sondes chaudieres"
ne te satisfait pas, car dans ce cas on garde quand meme la possibilite de reglage par les potars
et que une fois jugé reglés OK, on valide les consignes potars -> stock en eeprom
puis au prochain reset usage de ces valeurs stokées en eeprom -> puis RAM de travail
au lieu de relire en permanence les valeurs analoqique des potars.
Cela necessiste une sequence particuliere pour appui d'un BP ou etat d'une ou plusieurs entrees existantes
choisies specifiquement pour RENTRER dans cette sequence " reglages via potars"
L'autre solution que tu envisages est bien sur possible, mais assez lourde comparativement
donc plus d'entree ANA avec cette solution.
On détecte le lâcher de poussoir(s) : (chronometrage de la duree d'appui superieure à x Sec )
=> Sx1 + Sx2 lâchés après 4s : On entre en prog "Parametrage" (data 'PROG'=0); Led bleu sur carte (L5) allumé fixe.
=> Sx1 lâché après 2s : On passe au réglage suivant (le dernier reboucle sur le premier).
=> Sx2 lâché après 2s : On sauve en eeprom; Led rouge sur carte (L6) allumé 1s.
=> Sx1 lâché avant 1s : On incrémente.
=> Sx2 lâché avant 1s ; On décrémente.
eventuellement , on verifie le tout via
=> Sx1 lâché après 2s affichage des reglages sur LlCD
Sx1 + Sx2 lâchés après 4s :
on memorise les changements en Eeprom , arme le Flag en eeprom ('PROG'=99)
ex: Adresse epprom 0000=PROGR=99
avec Flag PROG=0 au chargement du programme *.hex
on sort de la boucle programmation "Parametrage"
Led bleu sur carte (L5) éteint
attente appui sur
=> EXIT par SW0 (RESET MCU) et data 'PROG'=99 ;
.... ou d'office via instruction Reset()
au lancement programme on teste le flag PROGR en eeprom @0000
si 00 On entre d'office en Progr Parametrage
(à moins de definir des parametres "USINE" par defaut,en dur dans le programme)?
si 99 on continue en sequence (Strap operation parametrage)
et on recupere ceux ci depuis l'eeprom ..-> RAM
sinon on peut toujours re-rentrer en parametrage via S1 S2 appuyés > 4sec apres un reset
Des remarques d'autres Fantaspiciens seraient aussi bienvenues !
Portail lourd motorisé 2 vantaux 24v
En ce qui me concerne, je n'aime pas ces procédures de réglages archi complexes avec des séquences de poussoirs, des LED's de couleurs... Même quand on a conçu le système, c'est la galère quand il faut y toucher. Bref si je devais faire de telles cartes, je ferai également un petit terminal qui viendrait se connecter dessus pour offrir une IHM digne de ce nom. Au prix où sont les écrans et les encodeurs (clin d'oeil au Maître Jean-Claude au passage), ce ne sera pas ruineux. Dans l'idéal, ce petit terminal pourrait être utilisé avec diverses cartes.
Portail lourd motorisé 2 vantaux 24v
- paulfjujo

Maître- Messages : 3259
- Âge : 75
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
je plussoie à ta remarque,
vu qu'avec un HCO5 sur la com UART, et l'usage d'une appli Android comme BlueElectronics( sans écrire de programme, ou un peu de configuration)
cela pourrait etre fait ....
ou avec Bluetooth Terminal pour Android..
ou terminal YAT sur PC (portable) avec touches de fonctions
MAIS c'est dans LA SPEC. du demandeur ,qui définit clairement , application SANS nécessiter l'utilisation d'un terminal ou appli externe tierce...
c'est déja bien que l'UART puisse déja servir au tests et deverminage de bugs.
vu qu'avec un HCO5 sur la com UART, et l'usage d'une appli Android comme BlueElectronics( sans écrire de programme, ou un peu de configuration)
cela pourrait etre fait ....
ou avec Bluetooth Terminal pour Android..
ou terminal YAT sur PC (portable) avec touches de fonctions
MAIS c'est dans LA SPEC. du demandeur ,qui définit clairement , application SANS nécessiter l'utilisation d'un terminal ou appli externe tierce...
c'est déja bien que l'UART puisse déja servir au tests et deverminage de bugs.
Portail lourd motorisé 2 vantaux 24v
Bonsoir,
Je plussoie aussi, mais l'un n'empêche pas l'autre... non ? (post de Paul 26154)
=> Sx1 + Sx2 lâchés après 4s : On entre en prog (Flag 'PROG'=1)
-> Led bleu sur carte (L5) allumé fixe.
-> Choix1 : Amax_INA (par défaut)
-> LCD : valeur existante du Choix1 (+ rappel des actions poussoirs)
=> Sx1 lâché après 2s : On passe au réglage suivant (le dernier reboucle sur le premier).
-> Choix suivant
-> LCD : valeur existante du Choix suivant (+ rappel des actions poussoirs)
=> Sx2 lâché après 4s : On sauve
-> RAM de travail
-> Led rouge sur carte (L6) allumé 1s.
-> Choix suivant
-> LCD : valeur existante du Choix suivant (+ rappel des actions poussoirs)
=> Sx1 lâché avant 2s et après 1s : On incrémente.
-> LCD : valeur existante + 1 pas (+ rappel des actions poussoirs)
=> Sx2 lâché avant 2s et après 1s ; On décrémente.
-> LCD : valeur existante - 1 pas (+ rappel des actions poussoirs)
=> EXIT par SW0 (RESET MCU) :
-> Flag 'PROG'=0
-> Led bleu sur carte (L5) éteint
-> LCD: retour affichage d'exploitation
OK ?
Je plussoie aussi, mais l'un n'empêche pas l'autre... non ? (post de Paul 26154)
Cette fonction 'à poussoirs' fonctionne parfaitement sur les 2 réalisations précédentes, même si pour la chaudière je n'ai pas (encore) 'doublé' en BT, comme sur le clavier. Sur ce projet, pour lequel un HC05 est prévu, on a simplement besoin que de 2 poussoirs. Leur intérêt est de laisser les réglages accessibles hors connexion.gwion a écrit :Même quand on a conçu le système, c'est la galère quand il faut y toucher.
Plus lourde : C'est à propos des plages et leurs pas ? Il faudrait revenir aux ajustables ?paulfjujo a écrit :L'autre solution que tu envisages est bien sûr possible, mais assez lourde comparativement
Euh, sur la chaudière, les modifications de paramétrages sont affichées au LCD en temps réel, donc il en serait de même, non ?paulfjujo a écrit :=> Sx1 lâché après 2s affichage des réglages sur LCD
Donc il faut un appui d'au moins 1s, et la procédure passerait à :paulfjujo a écrit :On détecte le lâcher de poussoir(s) : chronométrage de la durée d'appui supérieure à x Sec
=> Sx1 + Sx2 lâchés après 4s : On entre en prog (Flag 'PROG'=1)
=> Sx1 lâché après 2s : On passe au réglage suivant (le dernier reboucle sur le premier).
=> Sx2 lâché après 4s : On sauve
=> Sx1 lâché avant 2s et après 1s : On incrémente.
=> Sx2 lâché avant 2s et après 1s ; On décrémente.
=> EXIT par SW0 (RESET MCU) :
OK ?
Portail lourd motorisé 2 vantaux 24v
- paulfjujo

Maître- Messages : 3259
- Âge : 75
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour à tous,
je m'explique :
pour moi ,la difference de reglage des parametres
* par l'usage d'un menu specifique geré par 2 BP et duree d'appui
est une solution bloquante ... on reste dans la procedure de reglage tant qu'on a pas validé
et donc en dehors de l'appli / boucle principale du portail
on n'a pas le resultat immediat du reglage ..vu sur le comportement portail
* par contre, le reglage par potar (Analogique) permettrait un reglage Live "En ligne "
portail actif ,moyennant la condition prealable :
avoir une combinaison de 2 entrees PIC ou MCP23027 pouvant ACTIVER ou PAS ce mode de reglage
...ou un etat logique dispo particulier et unique pour cette fonctionalité.
une fois realisé ,on peut se passer de l'acquisition systematique des potars
pour ne travailler qu'avec l'image des reglages sauvés en RAM et Eeprom
Sortie de c emode ,en supprimant la condition prealable
nota:
on supposera que le temps d'execution Acqusition ANA, visu sur LCD en unites physique,
est negligeable devant la duree boucle principale.
question subsidiaire :
Valeurs par defaut des parametres à mettre en dur dans le programme ,
pour les variables de travail ?
difficile d'appuyer seulement entre 1 et 2 sec pour valider incr ou decr !
=> Sx1 lâché avant 2s et après *100mS : On incrémente.
-> LCD : valeur existante + 1 pas (+ rappel des actions poussoirs)
=> Sx2 lâché avant 2s et après 100mS ; On décrémente.
-> LCD : valeur existante - 1 pas (+ rappel des actions poussoirs)
* (100mS incluant un anti-rebond de 60mS minimum)
=> EXIT par SW0 (RESET MCU) :
-> Flag 'PROG'=0
-> Led bleu sur carte (L5) éteint
-> LCD: retour affichage d'exploitation
on ne peut pas executer des instruction apres appui sur reset
puisqu'on repart à zero au niveau du programme
je propose :
=> Sx1 + Sx2 lâchés après 4s : On SORT du prog parametrage
Led bleu sur carte (L5) éteint
Memo en eeprom Flag Parametrage=1 ( realisé au moins 1 fois)
Reset software
le programme se relance
lecture flag Parametrage en eeprom si=1 on passe outre
si on fait un Reset Hardware avec S1 etS2 appuyé preabalement
RESET
S1 S2 maintenus appuyés >4S
on rentre à nouveau dans le parametrage avec S1 S2
nota: Flag Parametrage=0 (par defaut) dans le code chargé dans le PIC
Babar64 a écrit :paulfjujo a écrit :
L'autre solution que tu envisages est bien sûr possible, mais assez lourde comparativement
Plus lourde : C'est à propos des plages et leurs pas ? Il faudrait revenir aux ajustables ?
je m'explique :
pour moi ,la difference de reglage des parametres
* par l'usage d'un menu specifique geré par 2 BP et duree d'appui
est une solution bloquante ... on reste dans la procedure de reglage tant qu'on a pas validé
et donc en dehors de l'appli / boucle principale du portail
on n'a pas le resultat immediat du reglage ..vu sur le comportement portail
* par contre, le reglage par potar (Analogique) permettrait un reglage Live "En ligne "
portail actif ,moyennant la condition prealable :
avoir une combinaison de 2 entrees PIC ou MCP23027 pouvant ACTIVER ou PAS ce mode de reglage
...ou un etat logique dispo particulier et unique pour cette fonctionalité.
une fois realisé ,on peut se passer de l'acquisition systematique des potars
pour ne travailler qu'avec l'image des reglages sauvés en RAM et Eeprom
Sortie de c emode ,en supprimant la condition prealable
nota:
on supposera que le temps d'execution Acqusition ANA, visu sur LCD en unites physique,
est negligeable devant la duree boucle principale.
question subsidiaire :
Valeurs par defaut des parametres à mettre en dur dans le programme ,
pour les variables de travail ?
Babar64 a écrit : => Sx1 lâché avant 2s et après 1s : On incrémente.-> LCD : valeur existante + 1 pas (+ rappel des actions poussoirs)
=> Sx2 lâché avant 2s et après 1s ; On décrémente.-> LCD : valeur existante - 1 pas (+ rappel des actions poussoirs)
difficile d'appuyer seulement entre 1 et 2 sec pour valider incr ou decr !
=> Sx1 lâché avant 2s et après *100mS : On incrémente.
=> Sx2 lâché avant 2s et après 100mS ; On décrémente.
* (100mS incluant un anti-rebond de 60mS minimum)
=> EXIT par SW0 (RESET MCU) :
on ne peut pas executer des instruction apres appui sur reset
puisqu'on repart à zero au niveau du programme
je propose :
=> Sx1 + Sx2 lâchés après 4s : On SORT du prog parametrage
Led bleu sur carte (L5) éteint
Memo en eeprom Flag Parametrage=1 ( realisé au moins 1 fois)
Reset software
le programme se relance
lecture flag Parametrage en eeprom si=1 on passe outre
si on fait un Reset Hardware avec S1 etS2 appuyé preabalement
RESET
S1 S2 maintenus appuyés >4S
on rentre à nouveau dans le parametrage avec S1 S2
nota: Flag Parametrage=0 (par defaut) dans le code chargé dans le PIC
Portail lourd motorisé 2 vantaux 24v
paulfjujo a écrit :Source du message * par contre, le réglage par potar (Analogique) permettrait un réglage Live "En ligne "
portail actif ,moyennant la condition préalable :
avoir une combinaison de 2 entrées PIC ou MCP23027 pouvant ACTIVER ou PAS ce mode de réglage
...ou un état logique dispo particulier et unique pour cette fonctionnalité.
Aie! Je découvre un souci sur ma proposition pour les réglages par potar, surtout avec portail maintenu actif : Une mauvaise sélection des poussoirs à combiner...
Initialement j'avais indiqué retenir les entrées au PIC de la même paire de came, dans la mesure où ces 2 entrées ne peuvent jamais être au même niveau. Mais, avec le portail actif... ça pose problème!
Il faut impérativement n'utiliser que des entrées qui n'ont aucune action sur le pilotage du portail.
Heureusement j'en dispose de 2, mais ... au MCP : TCA_Jn_inMB4 (Pin5) et TCA_Rg_inMB3 (pin4).
Elles étaient déjà affectées aux traitement de retour du TCA (U10), et j'ai inséré des cavaliers à ôter pour éviter tout conflit .
Sx1 et Sx2 projetés sur version avec Potar :Ce serait bon ?
Toutefois :
1) J'avais (mal?) compris à te lire précédemment que faire des réglages "en live", donc avec le portail actif, ça n'était pas possible à cause du délai de boucle ; raison pour laquelle, on devait procéder en 2 temps : l'opération de réglages (enregistrement en RAM), suivie du retour en exploitation (portail actif utilisant les réglages en RAM)...
2) Tu avais aussi indiqué que le réglage par potar de la fréquence PWM sur une plage étendue n'est pas possible (TRES réduite).
C'est pour ces 2 raisons que j'ai suggéré une solution par poussoirs (sans potar) pour tous les réglages,
- En espérant que ça puisse permettre effectivement un réglage de fréquence PWM sur une plage étendue... Ce serait le cas ?
- Pour disposer de 2 entrées poussoirs totalement dédiées à la Prog.
- Pour permettre en outre de 'libérer' les ports RB6 et RB7 désormais exclusivement dédiés à PGC et à PGD.
Il faut conclure (et trancher ?) :
J'avoue que bénéficier de réglages 'en ligne', donc avec le portail actif, serait vraiment un plus.
La modification des poussoirs à combiner Sx1 et Sx2 semble pouvoir le permettre.
Mais en revanche, le problème du réglage 'analogique' (par potar) de la fréquence PWM sur une plage étendue reste entier...
J'ai eu beau essayer de jouer avec le prescaler, je n'arrive à rien de concluant ; et pas mieux en fouillant sur le Net où j'ai trouvé ceci : Une solution par 'pas' fixes (pour un PIC 18F2520).
Un avis ?
Merci
A+
Vous n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
Portail lourd motorisé 2 vantaux 24v
- paulfjujo

Maître- Messages : 3259
- Âge : 75
- Enregistré en : juillet 2015
- Localisation : 01800
- Contact :
bonjour à tous,
Ce serait le cas ? NON !
la solution par pas fixe designée ne montre pas les details .. et je n'ai pas de MikroPascal..
j'avais deja envisagé une telle solution avec PAS entier correspondant au choix Preselecteur -> Diviseur correspondant
et 32 micropas dans chaque PAS entier ,pour un ajustage reduit de la valeur Frequence ..en gardant toujours PR2 > 222
et une reglage Dutycycle PWM de 0 100% en 10 bits
ça pourrait le faire ...
revoir la datasheet 19F27K42 concernant PWM et les frequences de base pouvant y etre associées avec PR2=254(+1)
proposition testée OK :
action sur Prescaler Timer2 ET aussi sur PR2 mais dans une zone delimitée et faible
pour toujours rester en resolution 10 bits sur la consigne PWM duty (% PWM)
la mesure Analogique EA2 est divisée en 4 zones (4096/1024)
pour faire correspondre le Prescaler de 0 à 3 -> pour diviseur de 1 à 8
et à l'interieur de chaque zone de 1024 pas, on peut recuperer 32 echelon
basé sur mini PR2=222 => evolution possible de 222 à 255..permettant un ajustage
fin de la frequence .
Plus la frequence PWM est élévée , moins bonne est la resolution !!!
Calcul F PWM :
ex: 1/(Fosc/4) *(255+1) *8 * Prediviseur=f(Prescaler)
Prescaler=2 => Prediviseur=4
=1/16 *(255+1) * Prediviseur = 0.0625* 256* 4= 64µS => F=1/T=1000000/64= 15625 Hz
Mesures de freq relevées sur analyser logig SQA
8.39 Khz 204 PW1= 625 EA2= 3706 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=241
9.10 Khz 277 PW1= 669 EA2= 3082 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=222
16.0Khz 342 PW1= 675 EA2= 3030 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=252
18.2Khz 609 PW1= 658 EA2= 2059 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=222
32.0Khz 708 PW1= 553 EA2= 1979 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=251
36.4Khz 860 PW1= 548 EA2= 1051 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=222
64.0Khz 969 PW1= 582 EA2= 978 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=252
71.0Khz 1051 PW1= 553 EA2= 221 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=228
modif soft pour afficher directement la valeur F( Pwm) calculée
15 PW1= 537 EA2= 115 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=225 Freq PWM=71111.1Hz
100 PW1= 532 EA2= 1015 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=253 Freq PWM=63241.1Hz
300 PW1= 525 EA2= 1696 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=243 Freq PWM=32921.8Hz
375 PW1= 532 EA2= 2024 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=253 Freq PWM=31620.6Hz
570 PW1= 524 EA2= 2076 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=222 Freq PWM=18018.0Hz
668 PW1= 524 EA2= 3036 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=252 Freq PWM=15873.0Hz
856 PW1= 532 EA2= 3160 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=224 Freq PWM=8928.6Hz
1091 PW1= 542 EA2= 3989 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=250 Freq PWM=8000.0Hz
on peut aussi definir 8 plages de diviseur au lieu de 4 ( de 0 à 7 pour 1 à 128)
mais manipuler un potar de reglage sur 270° n'est pas coton...
mais une fois reglé, on valide et
les potars...
Pour moi, un simple choix de frequence multiple de 2 devrait etre suffisant ...
je n'ai pas testé si la sortie NCO (à la place de FOSC/4) ... pourrait servir de reference frequence pour le timer2 PWM
Là on aurait un choix de reglage quasi infini.
à toi de trancher ...
pas d'autre avis ?
C'est pour ces 2 raisons que j'ai suggéré une solution par poussoirs (sans potar) pour tous les réglages,
- En espérant que ça puisse permettre effectivement un réglage de fréquence PWM sur une plage étendue... Ce serait le cas ?
- Pour disposer de 2 entrées poussoirs totalement dédiées à la Prog.
- Pour permettre en outre de 'libérer' les ports RB6 et RB7 désormais exclusivement dédiés à PGC et à PGD.
Ce serait le cas ? NON !
Mais en revanche, le problème du réglage 'analogique' (par potar) de la fréquence PWM sur une plage étendue reste entier...
la solution par pas fixe designée ne montre pas les details .. et je n'ai pas de MikroPascal..
j'avais deja envisagé une telle solution avec PAS entier correspondant au choix Preselecteur -> Diviseur correspondant
et 32 micropas dans chaque PAS entier ,pour un ajustage reduit de la valeur Frequence ..en gardant toujours PR2 > 222
et une reglage Dutycycle PWM de 0 100% en 10 bits
Sx1 et Sx2 projetés sur version avec Potar :
Entrée_En_PROG.jpg
Ce serait bon ?
ça pourrait le faire ...
revoir la datasheet 19F27K42 concernant PWM et les frequences de base pouvant y etre associées avec PR2=254(+1)
proposition testée OK :
action sur Prescaler Timer2 ET aussi sur PR2 mais dans une zone delimitée et faible
pour toujours rester en resolution 10 bits sur la consigne PWM duty (% PWM)
la mesure Analogique EA2 est divisée en 4 zones (4096/1024)
pour faire correspondre le Prescaler de 0 à 3 -> pour diviseur de 1 à 8
et à l'interieur de chaque zone de 1024 pas, on peut recuperer 32 echelon
basé sur mini PR2=222 => evolution possible de 222 à 255..permettant un ajustage
fin de la frequence .
Plus la frequence PWM est élévée , moins bonne est la resolution !!!
Calcul F PWM :
ex: 1/(Fosc/4) *(255+1) *8 * Prediviseur=f(Prescaler)
Prescaler=2 => Prediviseur=4
=1/16 *(255+1) * Prediviseur = 0.0625* 256* 4= 64µS => F=1/T=1000000/64= 15625 Hz
Mesures de freq relevées sur analyser logig SQA
8.39 Khz 204 PW1= 625 EA2= 3706 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=241
9.10 Khz 277 PW1= 669 EA2= 3082 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=222
16.0Khz 342 PW1= 675 EA2= 3030 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=252
18.2Khz 609 PW1= 658 EA2= 2059 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=222
32.0Khz 708 PW1= 553 EA2= 1979 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=251
36.4Khz 860 PW1= 548 EA2= 1051 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=222
64.0Khz 969 PW1= 582 EA2= 978 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=252
71.0Khz 1051 PW1= 553 EA2= 221 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=228
modif soft pour afficher directement la valeur F( Pwm) calculée
15 PW1= 537 EA2= 115 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=225 Freq PWM=71111.1Hz
100 PW1= 532 EA2= 1015 Choix Prescaler= 000 Precaler diviseur= 1 T2PR=253 Freq PWM=63241.1Hz
300 PW1= 525 EA2= 1696 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=243 Freq PWM=32921.8Hz
375 PW1= 532 EA2= 2024 Choix Prescaler= 001 Precaler diviseur= 2 T2PR=253 Freq PWM=31620.6Hz
570 PW1= 524 EA2= 2076 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=222 Freq PWM=18018.0Hz
668 PW1= 524 EA2= 3036 Choix Prescaler= 002 Precaler diviseur= 4 T2PR=252 Freq PWM=15873.0Hz
856 PW1= 532 EA2= 3160 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=224 Freq PWM=8928.6Hz
1091 PW1= 542 EA2= 3989 Choix Prescaler= 003 Precaler diviseur= 8 T2PR=250 Freq PWM=8000.0Hz
on peut aussi definir 8 plages de diviseur au lieu de 4 ( de 0 à 7 pour 1 à 128)
mais manipuler un potar de reglage sur 270° n'est pas coton...
mais une fois reglé, on valide et
les potars...Pour moi, un simple choix de frequence multiple de 2 devrait etre suffisant ...
je n'ai pas testé si la sortie NCO (à la place de FOSC/4) ... pourrait servir de reference frequence pour le timer2 PWM
Là on aurait un choix de reglage quasi infini.
à toi de trancher ...
pas d'autre avis ?
Code : Tout sélectionner
// Reglage gamme de frequence
SQA=1;
k= EA2 >>10 ; // 1 à 4 timer2 prescaler
T2CONbits.CKPS=k ;// Prescaler=2
m= T2CONbits.CKPS;
sprintf(CRam1," EA2=%5d Choix Prescaler= %03d Precaler diviseur=%3d ",EA2,m,Prescaler_Range[m]);
Print(CRam1);
// Reglage fin réduit sur 32 pas
k=( EA2-(k*1024)) >>5 ; //soit 0 à 32 dans la tranche selectionnee+
T2PR=222+k ;// Prescaler=2
sprintf(CRam1," T2PR=%03d",T2PR);
Print(CRam1) ;
SQA=0;
F1=(float) T2PR;
F2=0.0625* F1 * (float) Prescaler_Range[m];
F1= 1000000.0 / F2;
sprintf(CRam1," Freq PWM=%5.1fHz",F1);
Print(CRam1) ;
Portail lourd motorisé 2 vantaux 24v
Bonjour à tous,
Je n'imaginais pas qu'un réglage externe en fréquence PWM serait aussi limité... car si je comprends bien, utiliser des potar ou des pas de sélection par poussoirs ne change rien à la difficulté.
J'aurais donc une préférence pour le choix des poussoirs dédiés ....
En regardant de plus près, j'ai d'ailleurs pu les passer au nombre de 3, ce qui facilitera les manip.
Je pense aussi à quelque chose :
Pour tous les réglage je n'ai au max que 2 chiffres à visualiser. Soit dizaine et unité ; Soit unité et 1ère décimale
1- Amax_INA : 3A0 à 8A0 par pas de 0.1A
2- Fréquence PWM : 01kHz à 30kHz par pas de 1kHz
3- Duty_Low : 01% à 50% par pas de 1%
4- Duty_High : 50% à 99% par pas de 1%
5- Tmp_BRK : 0s1 à 5s0 par pas de 0.1s
6- Amp_BRK : 0A1 à 7A0 par pas de 0.1A
Si c'est plus adapté
, on pourrait s'inspirer du traitement fait pour la mise à l'heure de l'horloge chaudière :
A- On entre en prog parSx1+Sx2 >4s.
B- Par sélection (de 1 par défaut à 6),
- on choisi le 1er nombre par le poussoir Sx1 <4s (choix tournants de 0 à 9)
- on choisi le 2ème nombre par le poussoir Sx2 <4s (choix tournants de 0 à 9)
- puis on passe à la sélection suivante par le poussoir Sx3 <4s (choix tournants de 1 à 6)
etc...
C- On teste le réglage en live avant remise en exploitation
possibilité par poussoir Sx2 >4s
D- On sauve : poussoir Sx3 >4s
E- On quitte : poussoir Reset MCU
Effectivement, d'autres avis seraient bienvenus.
A+
Je n'imaginais pas qu'un réglage externe en fréquence PWM serait aussi limité... car si je comprends bien, utiliser des potar ou des pas de sélection par poussoirs ne change rien à la difficulté.
Effectivement! Si c'est entre potar et poussoir, compte tenu de ta remarque, les poussoirs seraient plus appropriés.paulfjujo a écrit :Source du message mais manipuler un potar de reglage sur 270° n'est pas coton... je n'ai pas testé si la sortie NCO (à la place de FOSC/4) ... pourrait servir de référence fréquence pour le timer2 PWM, Là on aurait un choix de réglage quasi infini ; à toi de trancher ...
J'aurais donc une préférence pour le choix des poussoirs dédiés ....
En regardant de plus près, j'ai d'ailleurs pu les passer au nombre de 3, ce qui facilitera les manip.
Je pense aussi à quelque chose :
Pour tous les réglage je n'ai au max que 2 chiffres à visualiser. Soit dizaine et unité ; Soit unité et 1ère décimale
Si c'est plus adapté
Effectivement, d'autres avis seraient bienvenus.
A+
Modifié en dernier par Babar64 le dim. 13 juil. 2025 19:20, modifié 7 fois.
Retourner vers « Coin Fourre-tout »
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 3 invités


