Page 2 sur 3

Re: Configuration

Posté : 26 juin 2018, 08:44
par djé
Bazinga a écrit : 26 juin 2018, 08:33 Pour forcer la variable j'aurai voulu avoir un bit qui s'active et se désactive en boucle toutes les secondes par exemple (voir plus rapidement si possible) et utiliser le front montant pour mettre 40 dans la valeur. Mais étant donné que rien qu'un transfert ne fonctionne pas (cf image ci-jointe) je suis perdue.
WTF??!!

Dans ton réseau n°4 tu écris 40 dans une variable sous conditions et en n°5 tu écris la même varaible avec la valeur 100 inconditionnellement.
C'est toujours le n°5 qui gagne.

C'est pas très clair. Que cherches tu a faire exactement. Réponds aux questions posées. On est pas devin.

Re: Configuration

Posté : 26 juin 2018, 08:47
par djé
oops, désolé javais pas vu ton post précédent.

Re: Configuration

Posté : 26 juin 2018, 08:54
par Bazinga
djé a écrit : 26 juin 2018, 08:44 WTF??!!

Dans ton réseau n°4 tu écris 40 dans une variable sous conditions et en n°5 tu écris la même variable avec la valeur 100 inconditionnellement.
C'est toujours le n°5 qui gagne.

C'est pas très clair. Que cherches tu a faire exactement. Réponds aux questions posées. On est pas devin.
Je sais que ce que j'ai fait n'est pas bon, mais j'ai voulu tester différentes choses, et ce programme n'est pas sur l'automate ! Ce que j'essayais de dire c'est que ce programme (l'image que j'avais mise) ne fonctionne pas (en simulation) dans le sens où DB11.DB102 reste à 1. Il ne prend pas la valeur 100.

Pas de soucis, j'allais le remettre ^^

Re: Configuration

Posté : 26 juin 2018, 08:56
par djé
Bazinga a écrit : 26 juin 2018, 08:26
Le problème de que je ne dois changer cette valeur qu'en cas de défaut. La machine est une étuve/presse, si on dépasse une certaines limite de température on doit arrêter de chauffer, pour ce faire je dois forcer la valeur de la température, ici à 40°C. Mais ce ne doit être fait que si on dépasse une limite, si ce n'est pas le cas on ne doit pas avoir 40 dans ce DB.
Ok.
Il faut que tu passes par une variable intermédiaire:
Disons que DB11.DBW102 est ta consigne de température qui est écrite par la supervision.

Tu crées une nouvelle variable (inutilisée) pour ta consigne ed température qui remplacera partout DB11.DBW102, puis tu crées un nouveau réseau qq part en amont ou tu écris la logique suivante:
Si j'ai pas de défaut alors je transfère la valeur supervision (DB11.DBW102) dans la consigne de température (nouvelle variable), sinon (donc t'as un défaut) je transfère 40 (dans la nouvelle variable).

Re: Configuration

Posté : 26 juin 2018, 09:09
par Bazinga
djé a écrit : 26 juin 2018, 08:56 Ok.
Il faut que tu passes par une variable intermédiaire:
Disons que DB11.DBW102 est ta consigne de température qui est écrite par la supervision.

Tu crées une nouvelle variable (inutilisée) pour ta consigne ed température qui remplacera partout DB11.DBW102, puis tu crées un nouveau réseau qq part en amont ou tu écris la logique suivante:
Si j'ai pas de défaut alors je transfère la valeur supervision dans la consigne de température, sinon (donc t'as un défaut) je transfère 40.
Je dois forcément créer ce réseau en amont ?

Re: Configuration

Posté : 26 juin 2018, 09:10
par djé
C'est plus logique non?

Re: Configuration

Posté : 26 juin 2018, 09:15
par Bazinga
J'évite de mélanger les modifications avec les programme principal. Mais si c'est nécessaire ou simplement mieux je peux le faire comme ça. Mais l'ordre a une importance dans le réalisation du programme ?

Re: Configuration

Posté : 26 juin 2018, 09:24
par djé
Bazinga a écrit : 26 juin 2018, 09:15 Mais l'ordre a une importance dans le réalisation du programme ?
OUI.

Re: Configuration

Posté : 26 juin 2018, 09:31
par Bazinga
Calmons nous, je suis là pour apprendre ^^
Sur les quelques logiciels que je connais, il me semble que pour certains l'ordre ne comptait pas. En tous les cas merci, je vais essayer de tester cette modification, je vous tiens au courant !

Re: Configuration

Posté : 26 juin 2018, 09:36
par djé
Oui et non.

Dans certain cas l'ordre d’exécution est important dans d'autre cas non.
Plus généralement il faut s'astreindre à écrire le choses dans l'ordre logique, c'est plus clair pour tout le monde.

Dans ton cas, tu fais un réseau pour choisir une consigne puis ensuite pour l'utiliser. Çà parait logique de l'écrire avant. Choix puis utilisation.
Si tu l'écris après, çà marchera à priori. mais c'est pas logique.