SRI (port B.0 sur un 18M2)

jojojo

Senior Member
Bonsoir, et bonne année, un peu en avance.

J'ai cherché (mal, sûrement dans la doc, et sur le forum) mais pas trouvé.

Que signifie le "SRI" en B.0, sur un 18M2 ?

Merci.
 

jojojo

Senior Member
Merci, Besqueut.

Je suis ennuyé, par l'utilisation de B.0, sur un 18M2.

Je n'arrive PAS a déconnecter ce fichu SRI.

J'ai bien tenté

SRLATCH %00000000, %00000000

Mais, rien du tout, si je fais un high B.0, ben, ça clignote à tout va.

Je voudrais juste utiliser cette pin comme une sortie NORMALE !
PAS comme un sapin de Noël !:rolleyes:

Merci, les gens.
 

MGU

Senior Member
Je n'arrive PAS a déconnecter ce fichu SRI.

J'ai bien tenté

SRLATCH %00000000, %00000000

Mais, rien du tout, si je fais un high B.0, ben, ça clignote à tout va.

Je voudrais juste utiliser cette pin comme une sortie NORMALE !
PAS comme un sapin de Noël !:rolleyes:

Merci, les gens.
Bonjour,
Je comprends pas bien.
SRI n'est pas spécifique au 18M2, et si on ne l'active pas, la commande ne fonctionne pas.

MM
 

PieM

Senior Member
J'ai bien tenté

SRLATCH %00000000, %00000000

Mais, rien du tout, si je fais un high B.0, ben, ça clignote à tout va.

Je voudrais juste utiliser cette pin comme une sortie NORMALE !
PAS comme un sapin de Noël !:rolleyes:

Merci, les gens.
Bonjour, et bonne année à tous.

Avec cette config de SRLATCH, effectivement SRI devrait être inactif.
Essaie de mettre un SRRESET en début de programme.

Maintenant, après les fêtes de fin d'année, il y a des gens qui voient des trucs qui clignotent, mais c'est un autre problème... :rolleyes:
 

jojojo

Senior Member
Bonjour, Michel et Pierre.

Je mets le code, et le schéma.
Code:
'Forage maison et gestion eaux pluviales.
'G.Treels 12/2017


#picaxe 18M2
Setfreq M32
let dirsB= 255
let dirsC= %11001111
SRRESET
Symbol leddesam=C.6
Symbol ledhautpuits=B.7
Symbol ledbaspuits= B.6
Symbol ledhautcuve= B.5
Symbol ledbascuve=B.4
Symbol buzzer=C.7
Symbol sondedesam=C.2
Symbol sondebascuve=B.3
Symbol sondehautcuve=B.2
Symbol sondebaspuits= B.1
Symbol sondehautpuits=B.0

Symbol retsonde=pinC.5

Symbol Surpr=C.3
Symbol Pompe= C.1
Symbol EV=C.0
b0=255
Symbol flagdesam=b0		'Faisable aussi juste avec b0 et masquage, mais bof...
Symbol flaghautpuits=b1
Symbol flagbaspuits=b2
Symbol flaghautcuve=b3
Symbol flagbascuve=b4
Symbol flagpompeon=b5

 
high leddesam,ledhautpuits,ledbaspuits,ledhautcuve,ledbascuve
SRRESET
SRLATCH %00000000, %00000000


Do

'******
High sondedesam
If  retsonde=0 then
	low leddesam
	Flagdesam=1
Else
	Low sondedesam
	High leddesam
	Flagdesam=0
End if


'*****
High sondehautpuits
If retsonde=0 Then
	Low ledhautpuits
	Flaghautpuits=0
Else
	Low sondehautpuits
	High ledhautpuits
	Flaghautpuits=1
End if

'*****
High sondebaspuits
If retsonde=0 then
	Low ledbaspuits
	Flagbaspuits=0
Else
	Low sondebaspuits
	High ledbaspuits
	Flagbaspuits=1
End if
'*****
High sondehautcuve
If retsonde=0 Then
	Low ledhautcuve
	Flaghautcuve=0
Else
	Low sondehautcuve
	High ledhautcuve
	Flaghautcuve=1
End if
'*****
High sondebascuve
If retsonde=0 Then
	Low ledbascuve
	Flagbascuve=0
Else
	Low sondebascuve
	High ledbascuve
	Flagbascuve=1
End if

'*************************
'action
''
If Flagdesam=1 Then
	Low surpr, pompe, ev
	High Buzzer
	Pause 1000
	Low buzzer
	Do 
		High sondedesam
		If  retsonde=1 then
			low leddesam
			Flagdesam=1
			exit
		End if
		High Buzzer
		Pause 1000
		Low buzzer
		Pause 1000
	Loop
End if

'***************************************TEST POUR COMPRENDRE le B.0***********************

If Flaghautcuve=0 Then

If Flaghautpuits=1 Then 


	high pompe'  Le fameux B.0 qui clignotte bêtement
Else
	

	low pompe
End if

If flagbaspuits=1 Then
	
	
	high pompe'	Et ici, qui fonctionne !
Else
	
	
	low pompe
end if
	
End if
	
'******************************************************************************************	

Loop

schema_18M2.jpg


La sortie C.1(pompe) fonctionne, si la sonde bas puits est active.
Elle clignote (1Hz environ), si la sonde haut puis est active.

Et, je jure que n'ai pas abusé, durant les fêtes :rolleyes:

Merci à vous.
 

PieM

Senior Member
Bonjour, Michel et Pierre.

Je mets le code, et le schéma.


View attachment 21771


La sortie C.1(pompe) fonctionne, si la sonde bas puits est active.
Elle clignote (1Hz environ), si la sonde haut puis est active.

Et, je jure que n'ai pas abusé, durant les fêtes :rolleyes:

Merci à vous.
Georges, il y a un truc, car la sortie SRQ en relation avec le Srlatch est C.3 donc Serial out!
Plutôt un pb de programme alors...
 

jojojo

Senior Member
Oui, merci.
C.3 est aussi utilisé en out classique (Symbol Surpr), mais, pour l'instant, le programme ne l'utilise pas.
Je vais tenter de changer la BAT85 de séparation, en sortie de B.0 (à l'ohmmètre elle a l'air très bien, mais bon ...)

Merci, en tout cas.
 

MGU

Senior Member
Bonjour,

C'est sûr, faut supprimer ce qui concerne SRlatch, le problème est ailleurs

C'est quoi la règle du jeu ?
On scanne des sondes et on agit en fonction du résultat?
Les sondes sont des interrupteurs? NO ?
J'ai pas trop cherché, mais j'ai pas trouvé à quoi servent les diodes.

MM
 

jojojo

Senior Member
Bon, j'ai trouvé.

Juste un illogisme de programmation.

Dans la vraie vie, il ne peut y avoir de l'eau en haut du puits, QUE si il en a en bas du puits

Bon, ça, le PIC ne le savait pas !

Je vais le lui dire ! Non mais !:)

Désolé de vous avoir embêté pour une broutille.
 

jojojo

Senior Member
On s'est croisé, Michel.

Oui, les ports b.0- B.3 et C.2 "pulse" successivement sur chaque sonde (deux morceaux de fil inox, pour chaque sonde).

Les diodes évitent de renvoyer le pulse ailleurs que sur C.5.

En fonction du résultat, on commande l'affichage des zones, et on agit.
Si cuves pleine, on ne pompe pas.
(de l'eau on pompe (sauf si cuves pleines), pas d'eau, on ,ne pompe pas et on bascule l'EV en eau de ville, si désamorçage pompe, on bloque tout, et là aussi, on passe en eau de ville, etc, etc ...)
Si cuve vides, eau de ville, et surpresseur out.


En fait, l'illogisme (et le fait de ramer sans le voir) vient du fait que sur le 18M2, le port B.0 a aussi une fonction spéciale (le fameux SRLATCH).

Je me suis bêtement entêté là-dessus, au lieu de réfléchir un peu sainement.

A bientôt, pour d'autres "zaventures" (le cadeau de Noël de mon petit fils, un kart électrique, piloté 14M2).
 

MGU

Senior Member
Oui, les ports b.0- B.3 et C.2 "pulse" successivement sur chaque sonde (deux morceaux de fil inox, pour chaque sonde).

Les diodes évitent de renvoyer le pulse ailleurs que sur C.5.

.
Ok, je pensais que vu la conductivité de l'eau, il n'y avait pas de danger pour les autres sorties

MM
 

jojojo

Senior Member
Il y a danger.
Comme les BAT ne coutent rien ...

Ici, la conductivité de l'eau varie de plus de 50%, selon le taux de présence "eau de pluie" (le plus faible) / "eau du forage" (le plus élevé).
Beaucoup de sels minéraux, dans l'eau du sous-sol, beaucoup moins, dans l'eau de pluie.
 

jojojo

Senior Member
Ben, oui, parfois, je pompe ! :)

En attendant, v'a la dernière mouture finie.

Et, ça fonctionne bien.

Encore merci.

Un truc: ralentir le processus (bon, on est pas pressé, là).
Donc, vitesse du 18M2 standard. Et pauses, après chaque test de sondes. (Tain ! Je ne crois pas à la mémoire de l'eau, mais à l'effet capacitif, maintenant, oui !).

Tout va bien, c'est l'essentiel.
Pour les curieux (j'ai les noms, hein ! :) ), le code finalisé. Je sais, c'est "à l'arrache". Ben tant pis, hein ! Ça marche !

Code:
'Forage maison et gestion eaux pluviales.
'G.Treels 12/2017--01/2018


#picaxe 18M2
'Setfreq M32
let dirsB= 255
let dirsC= %11001111

Symbol leddesam=C.6
Symbol ledhautpuits=B.7
Symbol ledbaspuits= B.6
Symbol ledhautcuve= B.5
Symbol ledbascuve=B.4
Symbol buzzer=C.7
Symbol sondedesam=C.2
Symbol sondebascuve=B.3
Symbol sondehautcuve=B.2
Symbol sondebaspuits= B.1
Symbol sondehautpuits=B.0

Symbol retsonde=pinC.5

Symbol Surpr=C.3
Symbol Pompe= C.1
Symbol EV=C.0

Symbol flagdesam=b0		'Faisable aussi juste avec b0 et masquage, mais bof...
Symbol flaghautpuits=b1
Symbol flagbaspuits=b2
Symbol flaghautcuve=b3
Symbol flagbascuve=b4
Symbol flagpompeon=b5
Symbol flagpompageencours=b6

 
high leddesam,ledhautpuits,ledbaspuits,ledhautcuve,ledbascuve



Do
w1=0	'est-utile ? bof.
'******
High sondedesam
pause 500
If  retsonde=0 then
	low leddesam
	Flagdesam=1
Else
	Low sondedesam
	High leddesam
	Flagdesam=0
End if


'*****
High sondehautpuits
pause 500
If retsonde=0 Then
	Low ledhautpuits
	Flaghautpuits=0
Else
	Low sondehautpuits
	High ledhautpuits
	Flaghautpuits=1
End if

'*****
High sondebaspuits
pause 500
If retsonde=0 then
	Low ledbaspuits
	Flagbaspuits=0
Else
	Low sondebaspuits
	High ledbaspuits
	Flagbaspuits=1
End if
'*****
High sondehautcuve
pause 500
If retsonde=0 Then
	Low ledhautcuve
	Flaghautcuve=0
Else
	Low sondehautcuve
	High ledhautcuve
	Flaghautcuve=1
End if
'*****
High sondebascuve
pause 500
If retsonde=0 Then
	Low ledbascuve
	Flagbascuve=0
Else
	Low sondebascuve
	High ledbascuve
	Flagbascuve=1
End if

'*************************
'action désamorçage

If Flagdesam=1 Then
	Low surpr, pompe, ev
	High Buzzer
	Pause 200
	Low buzzer
	Do 
		High sondedesam
		If  retsonde=1 then
			low leddesam
			Flagdesam=0
			exit
		End if
		High Buzzer
		Pause 1000
		Low buzzer
		Pause 200
	Loop
End if

'*************************
'action pompage

If Flaghautcuve=0 Then'cuve pas remplie
	
	If Flaghautpuits=1 And Flagbaspuits=1 Then 
		High pompe
		Flagpompageencours=1
	End if
	If Flaghautpuits=0 And Flagbaspuits=0 Then
		Low pompe
		Flagpompageencours=0
	End if
		
	If Flaghautpuits=0 and Flagpompageencours=1 Then
		High pompe
		
	End if
		
	
End if
'************************
'action surpresseur & EV  (ev ON => o de ville)	
If Flagbascuve=0 Then
	Time=0	'hystéresis
	Low surpr
	High EV 'il n'y a pas d'eau dans les cuves, on active EV eau de ville
		
Else
	If time >30 Then	'30sec, le temps que l'au ait fini de dégouliner, le long du câble, vers la sonde. Confort
		High surpr
		Low EV
	End if
	
End if

Loop
Merci encore, et prochainement, je vous parlerais bien du IGBT400_1200 , et d'un gentil 14M2.

Bye, les gens.

Georges.
 
Top