EDITO                                                                             

                                                                   

              

 Edité le 13 Juillet 2007  

Ce qu'il vous faut.

Les logiciels libres et gratuits à votre disposition :

IC prog  téléchargeable sur www.ic-prog.com

IC prog vous permet d'envoyer votre fichier "hex" vers votre PIC.

Un programmateur compatible JDM, rassurez vous, je n'ai pas inventé

la poudre et des montages de toutes sortes existent sur le net !

Voici mon programmateur...Artisanal mais fonctionnel pour les séries

 16, 18 et 24C , c'est déjà pas si mal !

 

 Un outil de développement : MPlab qui permet d'essayer et

 d'assembler votre programme (inutile pour le moment si vous

garder les programmes proposés au format hex directement

lisible par votre processeur)

 

 Une platine "veroboard "

 Pratique pour les mises au point, elle évite l'usage intensif du fer avec tous

 les risques de destruction des composants (patte qui casse, soudage, dessoudage)

 sans compter "la chauffe"que ces éléments n'apprécient pas forcément !

 

 platine Veroboard

ou des plaques à essai pour un montage "en dur" en fin de mise au point

 

 

 ici un montage parfaitement fonctionnel de clignotant

mais avec usage du fer...

Pour info, la maquette que je vous propose a été réalisée sur ce type de

platine, avec un peu de patience on y arrive.

A vous de voir si vous souhaitez développer le typon en fonction du

schéma de principe.

   Schéma et brochages des différents composants

             (utile pour la réalisation d'un typon)

Autre lien important : Les "papas" de notre PIC

le site Microchip qui propose les datasheets ainsi que de

nombreux logiciels pour développer...indispensable.

www.microchip.com

        

Quel usage ?

Cette application est destinée à la détection de niveau d'eau dans un puit par exemple

ou encore dans une cuve de jardin pour l'arrosage automatique des pelouses.

Le programme conçu par l'auteur permet de détecter le niveau haut, le niveau bas est

entamer l'action prévue à savoir la mise en marche de la pompe permettant l'arrosage.

En cas de non détection des sondes, la mise en marche est impossible.

 

   schéma de principe (avec pull up intégré) - programme pompe1

 

 Schéma au format PDF   

 

 Schéma de principe

La détection utilise un composant classique puisqu'il s'agit d'un CI de type CD 4001 (4 Nor)

avec seulement les deux premières portes utilisées.

Les portes sont utilisées en simple "inverseurs " (connexion des deux entrées) polarisées au pole

positif par une résistance de 390 k permettant de réduire le seuil de basculement par rapport à la

masse. Cette masse fait varier le signal en fonction de la "résistance du liquide", la résistance de 390 k

se charge également d'éviter le court circuit direct par rapport à cette masse.

La sortie du CD 4001 (broche 3 et 4) est renvoyée vers un transistor de type NPN BC 337 - 40 et via

la diode roue libre au relai.

Attention au gain des transistors, bien que le choix ne soit pas critique sur ce composant, j'ai eu quelques

surprises avec des composants annoncés à 40 en  gain (l'importance du fameux IC/IB ) et qui en relevé de

mesure au transistor mètre affichaient péniblement 12 de gain d'où un dysfonctionnement réel et une réaction

aléatoire du collage relai. (limite de collage)

Je vous conseille donc de vous intéresser au qualité de ces transistors et au besoin porter votre choix sur une

autre série comme le 2N2222 ou encore le BC 547.

 

                        

                            Aspect de la platine en cours d'essai

 

En bas à droite, vous pouvez apercevoir le CD 4001, le régulateur 7805 chargé de protéger

surtout le PIC (le CD pouvant travailler entre 5 et 15 volts sans problèmes).

J'ai préféré uniformiser l'ensemble de la tension à 5 volts pour la détection, le fonctionnement du

PIC (pas le choix pour lui) et pour les relais qui sont des modèles 5 volts 1 rt suffisant pour cette

application.

Le processeur PIC sera placé sur support tulipe pour faciliter l'extraction et la modification

éventuelle du programme ( pas de Bootloader sur du 16 F 84 !!!)

Pour ma part, j'ai également implanté des supports pour les CD 4001, bien que le prix

du composant est très faible (0.15 cent !), le remplacement en est grandement facilité

en cas de problèmes sur ce composant.

Surtout ne pas hésiter pour l'achat de supports de haute qualité, la fiabilité du système

n'en sera que plus sûre.

   

 

                 

                                      Apercu du redressement

  Pour cette maquette, ce pont de récupération est largement surdimensionné,

                 un modèle de la série WO en 1.5 A est amplement suffisant.

               Le transformateur est un modèle 4 VA sous de 12 à 15 volts.

 

La gestion des sondes sur le PIC

RB1 et RB2 sont configurées en sortie et "émettent" le 5 volts vers les broches de contact

des deux relais (une sonde niveau bas et une sonde niveau haut).

Les ports RB0 et RB3 sont en attente d'un collage relai, ce collage se produisant (présence de liquide),

 la tension sera renvoyée et le programme pourra renvoyé vers la sortie le signal de commande activant

la pompe. (RA0 pour le relai de commande et RA1 pour l'allumage de la diode)

En cas de défaut, à savoir la présence d'un liquide sur la sonde haute et l'absence sur la sonde basse

(cas impossible !) la sortie défaut s'active...(port RA2),  Il faudra rechercher le défaut et relancer !!!

Le 16 F84A utilise un quartz 4 Mhz et condensateurs 22 pf céramique pour son oscillateur.

Le Watchdog est activé en cas de plantage...

Pour la commande de sortie, j'ai opté pour un transistor NPN de la série BD (boitier TO 126) et

un relai (de récupération) 16A  toujours avec une bobine 5 volts. N'oubliez pas la diode roue

libre, véritable "aspirateur" des retours inductifs de la bobine du relai qui protège le collecteur

du transistor.

 

Je vous laisse étudier le programme de l'auteur que je remercie.

A ce sujet, vous verrez deux fichiers Hex suivant l'utilisation avec les résistances de pull up du PIC

ou pas. Pompe 1 - avec Pull up  -- c'est le schéma que j'ai choisi

Si vous optez pour les résistances externes, l'auteur du programme a adapté et inversé toute la logique,

pour ce qui est du schéma de principe, il faudra les intégrer...

 

 

;**********************************************************************
; Automatisation du fonctionnement d'une pompe d'arrosage ; mise en *
; marche sur interrupteur M/A ; régulation sur contact haut et bas *
; *
; tableau de vérité *
; ----------------- *
; Contact1 (bas=RB3) F F O O *
; Contact2 (haut=RB0) F O F O *
; --------------------------------------- *
; Marche Impossible Marche Arrêt *
; (défaut) (1 seule fois) *
; *
; on utilisera le PORTB avec les résistances de pull-up (attention *
; les signaux seront inversés).Les pattes RB1,RB2 sont configurées *
; en sortie et on envoie 5v dessus ; les pattes RB0, RB3 sont *
; configurées en entrée pour réceptionner ces 5v si les contacts *
; sont fermées par le niveau de l'eau. *
; Pour que la pompe démarre, il faut que les 2 contacts soient *
; fermés. Une fois qu'elle a démarré, on ne teste plus que le *
; contact bas. tant qu'il est fermé, la pompe tourne. *
; Pour éviter les redémarrages intempestifs, on arrête la pompe à *
; la première coupure et on ne la redémarre que lorsque le contact *
; haut est à nouveau fermé (le niveau d'eau est remonté) *
; *
; Date : 16/5/07 *
; Auteur : Briola *
;**********************************************************************
; Fichier requis: P16F84a.inc *
;**********************************************************************

LIST p=16F84a ; Définition de processeur
#include <p16F84a.inc> ; Définitions des constantes

__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC

; '__CONFIG' précise les paramètres encodés dans le processeur au moment
; de la programmation du processeur. Les définitions sont dans le fichier
; include.
; _CP_OFF Code protection OFF
; _PWRTE_ON Timer reset sur power on en service
; _WDT_OFF Watch-dog hors service
; _XT_OSC Oscillateur quartz moyenne vitesse


;**********************************************************************
; DEMARRAGE SUR RESET *
;**********************************************************************
org 0x000 ; Adresse de départ après reset
goto init ;

;*********************************************************************
; INITIALISATIONS *
;*********************************************************************
; initialisation et configuration du PORTB
init
bsf STATUS,RP0 ; passer banque1
movlw b'00001001' ; RB0 et RB3 en entrées
movwf TRISB ; le reste du PORTB en sorties
movlw b'00000000' ; configuration du PORTA
movwf TRISA ; en sortie

; mise en service des resistances de pull-up
movlw b'00000000' ; mise en service des
movwf OPTION_REG ; resistances de pull-up

; initialisation des interruptions
bcf STATUS,RP0 ; bank0
movlw b'00000000' ; pas d'interruptions
movwf INTCON ;

goto start ;
;*********************************************************************
; PROGRAMME PRINCIPAL *
;*********************************************************************

start
clrf PORTA ; efface le PORTA
clrf PORTB ; efface le PORTB
bcf PORTB,1 ; on envoie 5v sur RB1
bcf PORTB,2 ; on envoie 5v sur RB2
btfsc PORTB,0 ; on teste le contact haut
goto $-1 ; si ouvert on boucle
btfsc PORTB,3 ; si fermé, on teste le contact bas RB3
goto defaut ; si le contact bas est ouvert : impossible
bsf PORTA,0 ; si toujours fermé, démarrer pompe
bsf PORTA,1 ; allumer LED témoin verte
btfss PORTB,3 ; tester le contact bas RB3
goto $-1 ; si toujours fermé, boucler sur le test
bcf PORTA,0 ; si ouvert, arrêter pompe
bcf PORTA,1 ; éteindre LED témoin
goto init ; réinitialiser
defaut
bsf PORTA,2 ; allumer LED "défaut"
goto init ; réinitialiser

END ; directive fin de programme



 

 

Intégration de l'ensemble en coffret... Le moment le plus réjouissant

l'application de cet ensemble sur site...

  Détail de la face au format PDF

 

Différentes étapes et essais du montage

 

Les fiches "banane"  simulent le contact ...

 

La diode verte à gauche des fiches indiquent le contact, la diode

verte à droite la présence 220 volts en sortie -- Marche de la pompe...

Dans ce cas, la sonde "basse" est en marche : présence d'eau

Le niveau " haut " n'est pas encore atteint ...

 

Deuxième essai de gestion par le programme du PIC :

La sonde "basse" indique une absence de liquide, la sonde "haute"

une présence de liquide.

Cas impossible, allumage de la diode défaut et extinction de la sortie

                  -- Votre sonde " basse "  est  en défaut.--

 

                   220 volts  = DANGER !!!

 

J'ai repéré les sections 220 Volts par des adhésifs jaunes, certes pas très

réglementaire en électricité industrielle, mais très efficace pour éviter

l'électrocution !!! 

Pour une intervention sur le programme du pic, débranchez le secteur !!!

 

La réalisation des sondes 

Pour les sondes, j'ai utilisé des fils en un seul morceau, l'isolation est importante pour les

distances, il faut donc éviter des raccords qui réagissent comme des contacts à différentes

hauteurs du puits ou cuve.

La terminaison a été réalisée à l'aide du vieux stylo remplit de silicone de type "sanitaire".

Les fils dénudés ont été repliés de chaque coté du tube plastique.

Ca fonctionne parfaitement...

 

En jaune : Le stylo

En rouge et bleu, les fils de détection dénudés en sortie et repliés

sur les cotés. (Evitez de laisser les fils dénudés dans le tubes,

l'humidité permanente fausse la détection)

 

Les programmes

   Pompe 1 hex 

   Pompe 2 hex

 

                Edité le 30 Juillet 2007  

   A l'aimable autorisation de l'auteur

              Ensemble des fichiers pour modification éventuelle

              du programme à votre convenance. (après modification

              une recompilation est nécessaire - .hex pour le processeur  PIC)

              N'hésitez pas à me faire part de vos améliorations !!!

              (Compression au format rar)

               Téléchargez !           

 

 

 Edité le 27 Juillet 2007  

Mise en oeuvre

 

 

Vos remarques ou complément d'infos

     tperquin (puis @)  .free.fr

              (Obligation de retaper l'adresse Mail)

              Cette méthode efficace m'évite d'être vu par " les robots publicitaires"

             qui m'inonde de Spam et Pourriel !!!

             Merci