| Ligne 21 : |
Ligne 21 : |
| | La sortie du senseur PIR est une '''sortie active''' qui place le potentiel à GND/Masse ou 3.3V en fonction de l'état du senseur PIR. | | La sortie du senseur PIR est une '''sortie active''' qui place le potentiel à GND/Masse ou 3.3V en fonction de l'état du senseur PIR. |
| | | | |
| − | Cette sortie est donc compatible avec un système 3.3v, même si le senseur a besoin de 5 volts pour fonctionner correctement. En branchant l'alimentation du senseur sur la broche VIN, nous y récupérons une tension de 5V lorsque le Spark Core est alimenté via USB (5V) ou via {{underline|une source de tension externe 5V}} branchée directement sur VIN. | + | Cette sortie est donc compatible avec un système 3.3v, même si le senseur a besoin de 5 volts pour fonctionner correctement. En branchant l'alimentation du senseur sur la broche VIN, nous y récupérons une tension de 5V lorsque le Particle Core est alimenté via USB (5V) ou via {{underline|une source de tension externe 5V}} branchée directement sur VIN. |
| | | | |
| | [[fichier:SPARK-PIR_bb.jpg|480px]] | | [[fichier:SPARK-PIR_bb.jpg|480px]] |
| Ligne 37 : |
Ligne 37 : |
| | // 1) De détecter l'activation d'un senseur PIR avec | | // 1) De détecter l'activation d'un senseur PIR avec |
| | // avec déparasitage logiciel. | | // avec déparasitage logiciel. |
| − | // 2) Reporte cette information dans une variable "counter" sur Spark Cloud | + | // 2) Reporte cette information dans une variable "counter" sur Particle Cloud |
| | // (le nombre de détection) permettant à un autre logiciel comme | | // (le nombre de détection) permettant à un autre logiciel comme |
| | // un SmartPhone de détecter l'événement. | | // un SmartPhone de détecter l'événement. |
| Ligne 44 : |
Ligne 44 : |
| | // Pratique par exemple pour savoir s'il y a de l'activité dans une | | // Pratique par exemple pour savoir s'il y a de l'activité dans une |
| | // pièce (ex: surveiller un stock en pleine nuit). | | // pièce (ex: surveiller un stock en pleine nuit). |
| − | // 3) Offrir une fonction "reset" sur Spark Cloud permettant | + | // 3) Offrir une fonction "reset" sur Particle Cloud permettant |
| | // a un autre logiciel de remettre le compteur "counter" à zéro. | | // a un autre logiciel de remettre le compteur "counter" à zéro. |
| | // Force la relecture de l'entrée digital et la mise à jour | | // Force la relecture de l'entrée digital et la mise à jour |
| Ligne 67 : |
Ligne 67 : |
| | void setup() | | void setup() |
| | { | | { |
| − | // Enregistrer la variable compteur sur Spark Cloud | + | // Enregistrer la variable compteur sur Particle Cloud |
| | Spark.variable("counter", &counter, INT ); | | Spark.variable("counter", &counter, INT ); |
| − | // Publie l'état du contact dans la variable "close" sur Spark Cloud | + | // Publie l'état du contact dans la variable "close" sur Particle Cloud |
| | Spark.variable("actif", &pirState, INT ); | | Spark.variable("actif", &pirState, INT ); |
| | | | |
| − | // Enregistrer la fonction "reset compteur" sur Spark Cloud | + | // Enregistrer la fonction "reset compteur" sur Particle Cloud |
| | Spark.function("reset", resetCounter ); | | Spark.function("reset", resetCounter ); |
| | | | |
| Ligne 128 : |
Ligne 128 : |
| | | | |
| | == Faire un appel d'API avec CURL == | | == Faire un appel d'API avec CURL == |
| − | Nous allons maintenant tester notre programme... nous allons donc faire des appels d'API sur Spark Cloud. | + | Nous allons maintenant tester notre programme... nous allons donc faire des appels d'API sur Particle Cloud. |
| | | | |
| | Pour rappel, nous avons deux API dans notre programme: | | Pour rappel, nous avons deux API dans notre programme: |
| Ligne 175 : |
Ligne 175 : |
| | | | |
| | === Réinitialiser le compteur === | | === Réinitialiser le compteur === |
| − | Idéalement votre programme utilisant l'API Spark devrait prendre la valeur du compteur... puis surveiller le changement de cette valeur. | + | Idéalement votre programme utilisant l'API Particle devrait prendre la valeur du compteur... puis surveiller le changement de cette valeur. |
| | | | |
| | Si le compteur augmente... c'est qu'il détecte des mouvement (des personnes passent par là) :-) | | Si le compteur augmente... c'est qu'il détecte des mouvement (des personnes passent par là) :-) |
| Ligne 181 : |
Ligne 181 : |
| | Restons pragmatique... cette façon de faire n'est pas forcement confortable. | | Restons pragmatique... cette façon de faire n'est pas forcement confortable. |
| | | | |
| − | En conséquence, nous avons ajouté une fonction '''reset''' sur Spark Cloud pour réinitialiser le compteur (ps: j'ai volontairement laissé le paramètre "params", même s'il est vide). | + | En conséquence, nous avons ajouté une fonction '''reset''' sur Particle Cloud pour réinitialiser le compteur (ps: j'ai volontairement laissé le paramètre "params", même s'il est vide). |
| | | | |
| | <nowiki>curl https://api.spark.io/v1/devices/0123456789abcdef/reset -d access_token=123412341234 -d params=</nowiki> | | <nowiki>curl https://api.spark.io/v1/devices/0123456789abcdef/reset -d access_token=123412341234 -d params=</nowiki> |
| Ligne 195 : |
Ligne 195 : |
| | }</nowiki> | | }</nowiki> |
| | | | |
| − | La valeur 1 est retournée par l'exécution de la fonction sur le Spark... mais le compteur sera bien à zéro! | + | La valeur 1 est retournée par l'exécution de la fonction sur le Particle... mais le compteur sera bien à zéro! |
| | | | |
| | {{Spark-Core-Hacking-TRAILER}} | | {{Spark-Core-Hacking-TRAILER}} |