Bonjour, j'ai effectuer une "petite" recherche Google sans grand succès sur la possibilité de transfert d'un fichier stocké sur la carte SD d'un Arduino (bouclier SD ou Ethernet) vers un PC (sans utiliser le moniteur série..)
En effet je souhaiterais (si c'est possible) demander à l'Arduino Méga d'envoyer une fois par mois le fichier des informations qu'il a stocké sur sa SD via Ethernet ...
L'idéal etant de faire une copie automatique de ce fichier sur le PC ...
Il faut un programme sur le PC qui soit à l'écoute d'une requête entrante. Si vous avez un serveur FTP qui tourne sur votre PC, c'est envisageable. Jetez un oeil ici par exemple
Sinon vous pouvez aussi faire un programme sur le PC qui se déclencherait de temps en temps et enverrait une requête HTTP à votre Arduino qui serait programmé pour répondre avec le contenu du fichier. Charge à votre programme sur PC de récupérer les données et les stocker.
A quoi sert la copie automatique ? backup au cas où ?
ps/ le double post est interdit. choisissez de poster soit en anglais soit en francais mais pas des deux cotes a la fois, qui plus est sans le mentionner.
Merci pour votre réponse. je vais regarder votre lien avec attention.
Oui copie de backup car la SD sera dehors avec l'Arduino : en voici un peu plus sur le projet en question :
L'Arduino Mega permet de capturer des informations toutes les 30 secondes sur une ruche (poids, température, humidité, pluie, luminosité), il stocke ces informations dans un fichier mensuel nommé, par exemple, january.csv. Et un bouclier Ethernet envoie cela toutes les 30 secondes au serveur ThingSpeak.
Je n'ai pas de connexion USB à proximité, juste le réseau. Et sortir la carte SD tous les mois pour la copier sur un PC n'est pas trop pratique.
Je cherche donc à voir s'il existe un moyen pour l'Arduino une fois par mois via Ethernet d'envoyer une copie de ce fichier. Ou à défaut de transférer ce fichier ligne par ligne qui devrait néanmoins contenir 90000 lignes ...
Merci
ThingSpeak archive les données non ? un petit programme python pourrait aller les chercher de temps en temps depuis votre PC, sans passer par l'arduino
C'est tout à fait réalisable en utilisant les posibilités d'export de données hébergées par ThingSpeak -> voir l'API REST pour automatiser la chose.
Avec Linux : un petit script appelé chaque mois par une entrée crontab fait l'affaire
Si les données ont été envoyés vers ThingSpeak le PC peut les y récupérer.
Bonjour merci pour vos pistes!
Effectivement Thingspeak archive les données. mais ce serveur (en version gratuite) est limité à 4 (ruches) puis 75$/an...
Et il est assez buggé dans l'export, il oublie parfois des champs... Et surtout dernier gros point noir pour moi... J****e n'y connait rien en programmation sur PC ni en python ni autres (j'ai un peu programmé dans ma jeunesse sur Apple 2 GS en C il y a 35 ans... je vous laisse deviner mon âge, depuis vie de famille obligeant nada , je redémarre juste avec l'Arduino depuis quelques mois... Les choses ont pas mal évoluées surtout le développement des réseaux...)
Sinon cela serait quand même une assez bonne solution.
Je vais étudier avec attention la suggestion d'envoi par email si j'arrive à adapter le code à mon programme (et qu'il y a assez de place dans un Arduino Mega (8k SRAM c'est peu j'ai déjà quitté le Uno car 75% de 2k à part affichage en local et sauvegarde sur SD...)
Merci pour vos suggestions .
Je garde précieusement l'idée de l'export depuis ThinkSpeak tout de même si jamais je croise un geek pour me réaliser le programme...
Effectivement Thingspeak archive les données. mais ce serveur (en version gratuite) est limité à 4 (ruches)
tout dépend de la manière d'organiser ses données!
Poiurquoi ne pas grouper plusieurs ruches sur un même écran (channel) ?
La version gratuite de ThingSpeak est limitée à 4 'channels' qui peut comporter chacun jusqu'à 8 'threads'. J'ai en permanence un vingtaine de courbes avec cette version et il reste de la place !!
C'est bien 32 courbes de données envoyées qui peuvent apparaître sur 4 écrans.
S'ajoutent à ces courbes celles qui résultent d'un traitement (Matlab) effectué sur les données envoyées
Et 75 dollars par an est ce abusif pour le service rendu si vous aviez à faire la même chose vous même
Ils payent des serveurs hébergés en environnement sécurisé, le courant pour les alimenter, la bande passante en entrée et sortie, le backup des données et le développement des bibliothèques...
Si vous en retirez une valeur, contribuer 6 euros par mois est ce vraiment déraisonnable ? Vendez vous votre miel ?
ThingSpeak horodate les données, les héberge et les présente + offre en prime un Matlab en ligne pour traiter ces données (y compris dans la version gratuite) ce n'est pas négligeable.
Pour surveiller un process il est intéressant d'avoir plus que les données brutes remontées du site.
Ci dessous une fraction d'écran sur laquelle 3 des 4 graphes résultent d'un petit code Matlab de quelques lignes sur les données envoyées (ThingSpeak/Matlab propose de nombreux exemples de traitement des données)
J'ai essayé de mettre 2 ruches sur le même channel mais si c'est 2 adresses IP différentes (2 Arduino) qui essayent de mettre à jour le même channel cela ne passe pas (enfin avec moi) il y a un qui me donne l'erreur -301.
Je suppose que vous avez mis les capteurs de plusieurs ruches sur un seul Arduino?
Du coup il y a des liaisons filaires entre les ruches...
Je débute en Apiculture (même pas un an) et je fais cela pour le plaisir j'ai actuellement 5 ruches et je ne pense pas m'agrandir, ni vendre trop de miel (dons aux voisins, familles, ...)
Et venant juste de débuter j'ai fais pas mal de dépenses que je dois rembourser si je ne veux pas que ma femme m’assomme!
Sinon avez-vous vu mon autre post : (j'abuse désolé, mais je désespère un peu)
sur un problème d'écriture carte SD ou envoie à ThinkSpeak au lieu de SD et envoie...car pour le moment je suis coincé dessus et je ne peux du coup même pas essayer vos idées...
Je regroupe sans problème sur un même 'channel' des données issues de cartes diverses, Arduino, ESP8266, ESP32 et même des données issues directement d'un service tiers (Sigfox, The Thing Networks....). Certaines données d'un écran peuvent arriver d'un SIM800 (grprs)
Il ne s'agit pas de rûches dans mon cas et je n'utilise que le WiFi , plus jamais Ethernet.
(Les puces Ethernet utilsées avec les cartes Arduino limitent sérieusement les fonctionalités réseau accessibles)
Votre problème est peut être lié à la quasi simultanéité des connections pour alimenter un même channel (il faut respecter l'intervalle mini entre connections successives sur un même channel, intervalle de 15s pour la version gratuite)
Mes divers 'capteurs émetteurs' n'étant pas synchonisés et décalés j'ai parfois des données manquantes sur les graphes.
Autre post ? si on revient aux mêmes problèmes à résoudre mieux vaut ne pas se disperser !!
Ben je n'ai pourtant pas synchronisé mes 2 Arduinos lors de mes essais. Il m'avait semblé que cela fonctionnait (enfin très brièvement ) puis après impossible erreur -301...
Mais c'est peut-être par ce que je mets à jours toutes les 30 secondes alors du coup comme il faut 15 secondes entre chaque... J'ai peu de chance de tomber dessus il faudrait que je réessaye avec une mise à jour toutes les minutes.
Merci
Non l'autre post est sur un sujet différent : enregistrer les données sur carte micro SD d'un bouclier Ethernet et réussir en même temps (en fin juste après) à écrire sur ThingSpeak .
Je peux soit enregistrer sur la micro SD et là l'IP devient folle, soit si pas de carte micro SD dans le lecteur et là j'envoie mes données à ThingSpeak.
Bonjour, j'ai travaillé sur l'envoi de mail comme suggéré.
Bon pour le moment j'arrive bien à envoyer un mail (j'ai eu du mal à paramétrer celui-ci mais à l'aide de plusieurs post j'ai enfin un peu près compris et réussi!)
Mais pas encore avec une pièce jointe...
De plus je crois qu'il va vraiment falloir que je réussisse à utiliser le shield Ethernet avec une micro SD dedans.
Lors de l'essai d'envoi de mail avec aucune gestion du lecteur de micro SD le seul fait d'insérer une micro SD fait divagué l'adresse IP du Shield... comme sur ma demande d'aide (sans réponse d'ailleurs)
Même si dans ce programme là l'envoi de mail fonctionne correctement quand même....
Voilà si quelqu'un à des suggestions sur ces problèmes je suis toujours à l'écoute
Merci