From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
le 02-28-2013 09:13 AM
Bonjour à tous.
Je suis étudiant, et dans le cadre de mon projet j'ai souhaité utiliser LabView pour programmer ma carte arduino
Je tente de réaliser un suiveur solaire, pour cela il me faudrait un peu d'aide pour élaborer le programme, sachant que je n'ai que très peu d'expérience dans le domaine 😉
Je dispose de l'algorithme, mais je le trouve complexe à transposer en algorigramme labview.
Mon suiveur solaire fonctionnera de la sorte que, il se déplacera toujours vers le capteur qui capte le plus de luminosité (photosensor), j'en possède deux.
*Ce qui donnerai à peu près :
Lire capteur 1
Lire capteur 2
Si valeur capteur 1 > valeur capteur 2
Alors moteur +5°
Délai 10s
Tant que valeur capteur 1 > valeur capteur 2
Faire moteur +5°
Délai 10s
Sinon Délai 5minutes
Sinon Faire moteur -5°
Tant que valeur capteur 1 < valeur capteur 2
Faire moteur -5°
Délai 10s
Sinon Délai 5minutes
Voila. Je ne sais pas si mon algorithme est très compréhensible. En gros je le fait déplacer vers le capteur qui capte le plus de lumière, et quand il passe de valeur capteur 1 > valeur capteur 2 à valeur capteur 1 < valeur capteur 2, je le fait immobiliser 5minutes ( sinon il bougera tout le temps, je ne cherche pas une exactitude quant à la position optimale de mon positionneur solaire )
Le problème c'est que je ne sais pas faire ces boucles, l'incrémentation des +5° à chaque fois...
J'ai conscience que ça doit être simple, mais je m'emmêle beaucoup les pinceaux.
Hésitez pas à me poser toutes les questions nécessaires afin de mieux comprendre ou sont mes problèmes ! 🙂
Merci.
le 03-08-2013 08:39 AM
Bonjour Srygor,
Très bon sujet l'arduino, j'en ai utilisé un il y a pas si longtemps mais je ne l'ai pas interfacé avec LabVIEW.
L'algo que tu veux faire n'a pas l'air très compliqué et je pense pouvoir te faire un petit explicatif.
Pour cela, j'aurai besoin de plus de renseignement comm :
- Quel type d'entrée utilises-tu pour la mesure de tes capteurs solaire ?
- Par quel moyen pilotes-tu ton moteur ? Consigne,...
Slts,
le 03-14-2013 11:40 AM
Bonjour
Votre projet est assez plutôt intéressant.
Je penses que voici une simplification de votre algorithme en pseudo code
Delais=0
:DEBUT
Attendre Delais
Lire capteur 1
Lire capteur 2
Si valeur capteur 1 = valeur capteur 2
'ne rien faire
Delais=5 min
fin si
Si valeur capteur 1 > valeur capteur 2
moteur +5°
Delais=10s
Fin Si
Si valeur capteur 1 < valeur capteur 2
moteur -5°
Delais=10s
fin si
GOTO DEBUT
Vous trouverez ci join un exemple vous permettant de démarrer. Le pdf vous servira si vous n'avezpa sLV2012.
EricC
le 03-18-2013 07:24 AM
Bonjour EricC.,
Je pense que Srygor a disparu, peut-être huerté par ce suiveur solaire qui aurait tourné un peut trop vite lol
Malgré cela, je tenais à préciser que le code que tu as fourni est une très bonne base mais qui ne marchait dans le cas d'une différence négative.
Je me suis permis de le corriger et d'optimiser une ou deux petites choses.
Slts,
le 03-19-2013 02:23 AM
Effectivement Srygor semble avoir disparue.
Meci de ta remarque. Effectivement, a vouloir bien faire, je suis allé un peu vite.
Salutation
EricC
le 03-24-2015 11:01 AM
le 03-24-2015 11:52 AM
@ steuveu : suiveur solaire_rev2.vi
mis à part le cas particulier de la tempo "Attente",
quelle est l'utilité de placer "Prise de mesures", "traitement" et "commande moteur" dans une structure séquence ?
(étant donné que "tout" est relié par un flux de données parfaitement définit)
Et .... le code de la fonction "wait(ms)" s'éxécutant de toute façon en parallèle par rapport au code dont elle fait partie,
Je pense que l'on pourrait tout simplement supprimer la totalité de cette structure séquence.
à moins qu'il y ait des "contraintes" particulières ... mais personnellement, je ne les vois pas.