Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2511 connectés 

 


 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  155  156  157  ..  264  265  266  267  268  269
Auteur Sujet :

[arduino] Topic Unique blabla @ Arduino

n°207804
jimbofarra​r
Poreux de la cafetière
Posté le 22-05-2018 à 14:37:56  profilanswer
 

Reprise du message précédent :

Turkleton a écrit :

Ok, je vais commander sur Digikey, tu as raison :jap:  
 
Tiens, d'ailleurs, j'arrive pas à trouver sur leur site de quoi brancher cet adaptateur secteur sur une plaque à essai. Un truc genre ça : https://asset.conrad.com/media10/is [...] ign=center
 
Je peux pas croire qu'ils en vendent pas, je dois passer à côté… Vous utiliseriez quels mots-clefs pour la recherche ?
 
EDIT : c'est bon en fait, j'ai trouvé.


Sur Amazon tu peux trouver ton bonheur : Adafruit 2,1 mm Breadboard Friendly DC Barrel Jack
https://www.amazon.fr/gp/aw/d/B00KL [...] ref=plSrch


---------------
Bien des Shubs et des Zouls furent calcinés dans les profondeurs de l'énorme Sloar, en vérité, je vous le dis !
mood
Publicité
Posté le 22-05-2018 à 14:37:56  profilanswer
 

n°207806
Turkleton
I don't quite understand you
Posté le 22-05-2018 à 14:53:43  profilanswer
 

C'est bon, j'ai trouvé. Je filtrais par prise "femelle". En fait c'est mâle… [:yo_play:1]


---------------
If you think it could look good, then I guess it should
n°208235
dureiken
Posté le 24-05-2018 à 21:31:17  profilanswer
 

Salut les gars
 
je viens de mettre ma carte ethernet sur mon arduino mega, j'arrive a le pinger mais lui n'arrive pas a attendre mon serveur.
 
Connaissez vous un code simple pour juste pinger un serveur depuis l'arduino en serial par exemple  ?
 
Merci

n°208397
dureiken
Posté le 25-05-2018 à 23:21:00  profilanswer
 

Pour completer : il me dit bien "server started at ip ...." sur le serial de l'arduino, j'arrive à le pinger depuis le pc
 
mais chose étrange dans ma box il ne voit rien connecté sur le port ethernet, j'ai essayé avec un autre arduino et pareil
 
carte ethernet HS ?
 
Merci

n°208398
Turkleton
I don't quite understand you
Posté le 25-05-2018 à 23:27:10  profilanswer
 

J'ai jamais utilisé le shield ethernet, mais normalement y'a des codes simples directement dans les exemples.


---------------
If you think it could look good, then I guess it should
n°208399
dureiken
Posté le 25-05-2018 à 23:27:48  profilanswer
 

oui je lance le code ping de "ethernet master" et il s'arrete a "pings" ...

n°208400
SuperSic
Posté le 25-05-2018 à 23:27:49  profilanswer
 

ton port ethernet de l'arduino a une IP fixe ?
et ton réseau est configuré avec du DHCP ?
 
Sinon, question de noob sur la soudure. Vous soudez à quelle température ? Cet aprem, j'ai tenté vers les 350°C mais ça semblait trop (boulette d'étain sur les fils), je suis descendu à 300°C et ca semblait mieux.


---------------
"Les soldats vivent. Et se demandent pourquoi." Toubib (La Compagnie noire) | [TU] Pronomoo
n°208401
dureiken
Posté le 25-05-2018 à 23:28:19  profilanswer
 

le port ethernet a une IP fixe oui, j'arrive a la pinger

n°208413
dureiken
Posté le 26-05-2018 à 08:29:41  profilanswer
 

Salut
 
quelqu'un peut-il m'expliquer que je comprenne enfin comment brancher ça :
 
https://reho.st/medium/self/3264a63e21af245e40803140a89305daee546bb6.jpg
 
sachant que je veux que ce soit alimenté par une alim externe et non par l'arduino pour faire coller les relais.
 
Merci

n°208418
M4vrick
Mad user
Posté le 26-05-2018 à 09:14:23  profilanswer
 

dureiken a écrit :

Salut
 
quelqu'un peut-il m'expliquer que je comprenne enfin comment brancher ça :
 
https://reho.st/medium/self/3264a63 [...] 546bb6.jpg
 
sachant que je veux que ce soit alimenté par une alim externe et non par l'arduino pour faire coller les relais.
 
Merci


 
Tu peux faire une photo des connexions avec la sérigraphie ?
Mais théoriquement tu as deux broches pour l'alim donc c'est facile à alimenter en externe.


---------------
--== M4vr|ck ==--
mood
Publicité
Posté le 26-05-2018 à 09:14:23  profilanswer
 

n°208431
dureiken
Posté le 26-05-2018 à 11:34:51  profilanswer
 

M4vrick a écrit :


 
Tu peux faire une photo des connexions avec la sérigraphie ?
Mais théoriquement tu as deux broches pour l'alim donc c'est facile à alimenter en externe.


 
https://reho.st/medium/self/5a0b9825675949e9bf50c24f1042fb08e83a8462.jpg
 
https://reho.st/medium/self/045e96fc504860fbf4face0dfc204da6fbe02151.jpg
 
Merci

n°208432
jimbofarra​r
Poreux de la cafetière
Posté le 26-05-2018 à 11:38:08  profilanswer
 

dureiken a écrit :

Salut
 
quelqu'un peut-il m'expliquer que je comprenne enfin comment brancher ça :
 
https://reho.st/medium/self/3264a63 [...] 546bb6.jpg
 
sachant que je veux que ce soit alimenté par une alim externe et non par l'arduino pour faire coller les relais.
 
Merci


Tu enlèves la connexion entre VCC et JD-VCC et tu mets ton 5V externe sur JD-VCC (sans oublier de relier la masse de ton alim externe à GND)
 
Tu laisses le 5V de l’arduino sur VCC (pour alimenter les optocoupleurs)


---------------
Bien des Shubs et des Zouls furent calcinés dans les profondeurs de l'énorme Sloar, en vérité, je vous le dis !
n°208437
dureiken
Posté le 26-05-2018 à 12:31:58  profilanswer
 

ca marche merci c'est ce que j'avais fait la derniere fois, j'étais pas sur du fait qu'il n'y ait qu'un ground sur la carte
 
Merci !

n°208510
SuperSic
Posté le 26-05-2018 à 21:51:21  profilanswer
 

:hello:
 
J'ai besoin d'aide pour un petit projet perso. L'idée est de créer un détecteur de frigo/congélateur ouvert via une sonde de température (DS18B20) et d'un buzzer pour donner l'alerte si la température est trop élevée. L'alternative serait d'utiliser un capteur de pression, ou un couplage des 2.
 
J'ai fait un prototype grossier avec un Arduino Uno, mais vu le faible nombre d'input/output nécessaire, je pense utiliser un arduino nano pour le modèle définitif. Se pose la question de l'alimentation électrique de l'arduino, sachant que je tiens à éviter une alimentation filaire (pas pratique dans ma cuisine).
 
Est-ce que je peux alimenter un arduino nano avec une pile (ou accumulateur) ? Si oui, ça tient combien de temps (grosso modo) ?
Et quid de la tension/amperage nécessaire pour l'arduino ?
 
(ouais, je suis mauvais  :sweat: )


---------------
"Les soldats vivent. Et se demandent pourquoi." Toubib (La Compagnie noire) | [TU] Pronomoo
n°208521
ObsydianKe​nobi
peloton suicida
Posté le 26-05-2018 à 23:56:11  profilanswer
 

Ca tiendra pas longtemps en standard, mais il y a des astuces (par exemple ne réveiller le système que toutes les 2mn, pas besoin de tourner en permanence)
Voir ce lien par exemple https://openhomeautomation.net/arduino-battery/

Message cité 1 fois
Message édité par ObsydianKenobi le 26-05-2018 à 23:56:34

---------------
Long-range goals keep you from being frustrated by short-term failures. RIP VC
n°208533
Natopsi
☄️Just end it already!☄️
Posté le 27-05-2018 à 11:16:16  profilanswer
 

SuperSic a écrit :

Est-ce que je peux alimenter un arduino nano avec une pile (ou accumulateur) ? Si oui, ça tient combien de temps (grosso modo) ?
Et quid de la tension/amperage nécessaire pour l'arduino ?
 
(ouais, je suis mauvais  :sweat: )


Prends un Arduino mini comme ça t'as pas la consommation du FT232, dessoude la led d'alimentation et t'as une base excellente.
 
Après pour tenir longtemps pas d'autre choix que de mettre le merdier en veille régulièrement:
https://github.com/rocketscream/Low-Power
 
Et pour l'alimentation, si tes capteurs supportent le 3.3V alors une batterie Li-Ion fera parfaitement l'affaire.


---------------
ACH/VDSHFRCoin◈1435mm⚡
n°208537
Nitescent
Posté le 27-05-2018 à 11:35:53  profilanswer
 

Si on branche deux arduino nano sur un même ordi, il n'y a pas de problème pour les différencier au niveau des ports COM?
Si j'en attribue un fixe à chacun, ils ne risquent pas de s'intervenir au branchement?  [:transparency]
J'imagine que ça marche, mais on sait jamais :o


---------------
Photos astro sur Flickr | Observatoire astronomique à distance Youtube
n°208538
Natopsi
☄️Just end it already!☄️
Posté le 27-05-2018 à 11:41:08  profilanswer
 

Tant que tu ne change pas de port USB ça devrait bien se passer sous Windows.


---------------
ACH/VDSHFRCoin◈1435mm⚡
n°208541
SuperSic
Posté le 27-05-2018 à 12:03:53  profilanswer
 

ObsydianKenobi a écrit :

Ca tiendra pas longtemps en standard, mais il y a des astuces (par exemple ne réveiller le système que toutes les 2mn, pas besoin de tourner en permanence)
Voir ce lien par exemple https://openhomeautomation.net/arduino-battery/


Merci :jap:
 

Natopsi a écrit :

Prends un Arduino mini comme ça t'as pas la consommation du FT232, dessoude la led d'alimentation et t'as une base excellente.
 
Après pour tenir longtemps pas d'autre choix que de mettre le merdier en veille régulièrement:
https://github.com/rocketscream/Low-Power
 
Et pour l'alimentation, si tes capteurs supportent le 3.3V alors une batterie Li-Ion fera parfaitement l'affaire.


Ca ne fonctionne pas avec un nano ?
J'ai déjà 1 Mega, 2 Uno et 4 Nano de dispo ^^


---------------
"Les soldats vivent. Et se demandent pourquoi." Toubib (La Compagnie noire) | [TU] Pronomoo
n°208546
ObsydianKe​nobi
peloton suicida
Posté le 27-05-2018 à 14:07:31  profilanswer
 

Un nano en 5v tourne très bien avec une lithium 3.7 :o


---------------
Long-range goals keep you from being frustrated by short-term failures. RIP VC
n°208552
dureiken
Posté le 27-05-2018 à 14:40:24  profilanswer
 

Salut les gars
 
certains d'entre vous ont deja testé de mesurer le taux de chlore dans leur piscine avec un arduino et une sonde ORP ?
 
Merci

n°208558
Nitescent
Posté le 27-05-2018 à 16:48:07  profilanswer
 

Natopsi a écrit :

Tant que tu ne change pas de port USB ça devrait bien se passer sous Windows.


 :jap:  
 
 
 
 
Une autre question, est-ce qu'on peut alimenter un potentiomètre avec un 5V externe?
J'avais lu qu'il valait mieux éviter parce que le 5V externe ne sera pas exactement le même que celui de l'arduino, donc on peut saturer la mesure et perdre en précision.
Mais si on n'a pas besoin d'un truc hyper précis ça peut poser problème?
 
Ou alors est-ce qu'il vaut mieux tirer le 5V de l'arduino? Et qu'elle est la limite du coup? Un fil en 22AWG de 5 mètres ça commence à faire long ou c'est négligeable?

n°208560
ObsydianKe​nobi
peloton suicida
Posté le 27-05-2018 à 17:27:22  profilanswer
 

Alimenter un potentiomètre?


---------------
Long-range goals keep you from being frustrated by short-term failures. RIP VC
n°208598
WipEout 20​97
Do you think we can fly
Posté le 27-05-2018 à 23:59:58  profilanswer
 

Salut les Arduineurs,
je viens ici pour vous présenter mon projet, et bien sur j'aurais quelques question car je bloque un peu...
mes conaissances en ardu ne sont pas hyper complexes, je sais surtout interpréter des signaux venant de capteurs, en faire des calculs, etc... les bases

 

Et je me suis lancé dans un projet de télémétrie pour une voiture RC.

 

https://i.imgur.com/XOLn7Utl.jpg
a gauche qui éclaire rouge, l'ardu. le petit connecteur a plat a côté envoie les RX / TX / VIN / GND et une copie du signal récepteur pour un autre ardu dans la carosserie qui contrôle des LED

 

Voila a quoi ca ressemble, sur la voiture j'ai :
- un DFRobot Beetle BLE sur son support
- un capteur de RPM pour moteur brushless
- deux TMP36 pour la température moteur / variateur
- deux transistors sur sortie PWM pour controller les ventilateurs
- deux ponts diviseurs pour récupérer la tension ACCU et BEC (alimentation 6v issue du variateur)

 

Tout ce petit monde est alimenté par l'accu LiPo 2 éléments, et me permet de récupérer des données intéressantes, et de contrôler les ventilos en fonction de la température (multiple de la valeur en PWM a partir de 40°) ce dernier point c'est a la fois pour le fun mais aussi parce qu'ils sont TRES bruyants.

 

J'ai fait deux codes, le premier envoie les données que je veux de façon la plus lisible possible sur les voies séries. Je les récupère en USB (pas pratique en roulant) et en BT sur un autre ardu raccordé a un PC faute d'avoir un écran pour l'instant. En sortie j'ai ça (la valeur fuel est calculée par un map de la tension accu, et la vitesse via un calcul avec le rapport de transmission final et le diametre des roues) :

 

RPM:     18300
SPEED:  34Km/h
FUEL:    47%
TEMPMOT: 35°
TEMPESC: 31°
VOLTBAT: 7.44v
VOLTBEC: 5.90v

 

Et je suis en train de travailler sur une version plus simple, qui envoie les données de façon plus brute (et sans les conversions inutiles de fuel / kmh), dans le but d'envoyer quelque chose de pas trop lourd en wireless et de les interpréter afin d'en faire un affichage sympa sur un LCD.

 

Mais je m'en sors pas... j'ai testé tout un tas de méthodes vues sur internet que j'arrivais plus ou moins bien a appliquer et ça donne pas grand chose :/
par exemple ça me semble pas mal d'envoyer une chaine, ce qui donnerait ceci en reprenant l'exemple plus haut :

 

18300,35,31,74,59 (j'ai fait un x10 sur les volts pour eviter le float)

 

mais bon j'ai beau envoyer tout ça et le recevoir d'un autre côté, j'arrive pas a les interpreter. vous auriez des liens / tutos / conseils :??:
je peux vraiment envoyer les données sous n'importe quel forme evidemment :)

Message cité 2 fois
Message édité par WipEout 2097 le 28-05-2018 à 00:03:26
n°208701
jemangedes​lolos
Posté le 28-05-2018 à 16:56:44  profilanswer
 

WipEout 2097 a écrit :

Salut les Arduineurs,
je viens ici pour vous présenter mon projet, et bien sur j'aurais quelques question car je bloque un peu...
mes conaissances en ardu ne sont pas hyper complexes, je sais surtout interpréter des signaux venant de capteurs, en faire des calculs, etc... les bases
 
Et je me suis lancé dans un projet de télémétrie pour une voiture RC.
 
https://i.imgur.com/XOLn7Utl.jpg
a gauche qui éclaire rouge, l'ardu. le petit connecteur a plat a côté envoie les RX / TX / VIN / GND et une copie du signal récepteur pour un autre ardu dans la carosserie qui contrôle des LED
 
Voila a quoi ca ressemble, sur la voiture j'ai :
- un DFRobot Beetle BLE sur son support
- un capteur de RPM pour moteur brushless
- deux TMP36 pour la température moteur / variateur
- deux transistors sur sortie PWM pour controller les ventilateurs
- deux ponts diviseurs pour récupérer la tension ACCU et BEC (alimentation 6v issue du variateur)
 
Tout ce petit monde est alimenté par l'accu LiPo 2 éléments, et me permet de récupérer des données intéressantes, et de contrôler les ventilos en fonction de la température (multiple de la valeur en PWM a partir de 40°) ce dernier point c'est a la fois pour le fun mais aussi parce qu'ils sont TRES bruyants.
 
J'ai fait deux codes, le premier envoie les données que je veux de façon la plus lisible possible sur les voies séries. Je les récupère en USB (pas pratique en roulant) et en BT sur un autre ardu raccordé a un PC faute d'avoir un écran pour l'instant. En sortie j'ai ça (la valeur fuel est calculée par un map de la tension accu, et la vitesse via un calcul avec le rapport de transmission final et le diametre des roues) :
 
RPM:     18300
SPEED:  34Km/h
FUEL:    47%
TEMPMOT: 35°
TEMPESC: 31°
VOLTBAT: 7.44v
VOLTBEC: 5.90v
 
Et je suis en train de travailler sur une version plus simple, qui envoie les données de façon plus brute (et sans les conversions inutiles de fuel / kmh), dans le but d'envoyer quelque chose de pas trop lourd en wireless et de les interpréter afin d'en faire un affichage sympa sur un LCD.
 
Mais je m'en sors pas... j'ai testé tout un tas de méthodes vues sur internet que j'arrivais plus ou moins bien a appliquer et ça donne pas grand chose :/
par exemple ça me semble pas mal d'envoyer une chaine, ce qui donnerait ceci en reprenant l'exemple plus haut :
 
18300,35,31,74,59 (j'ai fait un x10 sur les volts pour eviter le float)
 
mais bon j'ai beau envoyer tout ça et le recevoir d'un autre côté, j'arrive pas a les interpreter. vous auriez des liens / tutos / conseils :??:
je peux vraiment envoyer les données sous n'importe quel forme evidemment :)


 
 :hello:  
 
Félicitations, tu es plus courageux que moi  :o  
Je suis en train de faire un truc similaire mais je n'ai pris le temps de faire des photos.
 
Par contre je ne comprends pas ce que tu n'arrives pas a faire.
Tu t'es mis en place ton petit protocole d'échange très bien.
Tu arrives à le recevoir et tout mais tu dis ne pas réussir à l’interpréter...c'est a dire ? Quels résultats as tu ?
 
Sinon moi ce que je fais pour réduire au max la longueur des trames, c'est que j'envoie tout en hexa et non en ascii.
C'est la partie afficheur qui va faire la conversion. Je m'arrange pour avoir une trame d'une longueur fixe et donc je n'ai plus besoin de séparateur etc etc.
J'ai juste à aller chercher mes valeurs dans le champ désiré après avoir fait un CRC sinon je jette la trame.

n°208721
WipEout 20​97
Do you think we can fly
Posté le 28-05-2018 à 18:28:28  profilanswer
 

Ben quand je dis que je recois ma trame, c'est seulement qu'elle s'affiche dans la console série de l'arduino récepteur :/ j'ai pas bien compris comment l'interpréter et les 150 méthodes différentes sur internet m'embrouillent.
la comm entre les ardus est transparente via le BT

 

Tout ce que je veux c'est récupérer ces chiffres afin d'en faire quelque chose, genre les afficher sur un LCD quoi :o

Message cité 1 fois
Message édité par WipEout 2097 le 28-05-2018 à 18:30:09
n°208733
rat de com​bat
attention rongeur méchant!
Posté le 28-05-2018 à 19:38:19  profilanswer
 

WipEout 2097 a écrit :

Tout ce que je veux c'est récupérer ces chiffres afin d'en faire quelque chose, genre les afficher sur un LCD quoi :o

Si je comprends bien tu as cette chaîne de caractères et tu sais pas comment la traiter c'est bien ça? Je sais pas si en C++ il  y a plus élégant mais si on se limite au C tu peux utiliser strtok() pour découper ta chaîne en morceaux et atoi() pour convertir en nombres avec lesquels tu peux ensuite faire des calculs ou les afficher sur ton LCD.
 
Un petit exemple (compilable et fonctionnel sur PC, c'est pratique la portabilité du C :) ):

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. //à ajuster
  6. #define STRING_MAX 25
  7. #define NB_VALEURS_MAX 5
  8.  
  9.  
  10. void recevoir_msg(char* c) //émulation bidon de la fonction BT
  11. {
  12.     strcpy(c, "18300,35,31,74,59" );
  13. }
  14.  
  15. int main(void)
  16. {
  17.     char msg[STRING_MAX];
  18.     
  19.     recevoir_msg(msg); //à ajuster
  20.     
  21.     int valeurs[NB_VALEURS_MAX];
  22.     char *ptr;
  23.     int i=0;
  24.     
  25.     
  26.     //1ere valeur
  27.     ptr=strtok(msg, "," );
  28.     valeurs[i++]=atoi(ptr);
  29.     
  30.     //et le reste
  31.     while((ptr=strtok(NULL, "," )))
  32.     {
  33.         valeurs[i++]=atoi(ptr);
  34.     }
  35.     
  36.     //nous avons stockés i valeurs
  37.     
  38.     //en faire quelque chose
  39.     //...
  40.     
  41.     
  42.     //debug: afficher tout le tableau    
  43.     for(i=0; i<NB_VALEURS_MAX; i++)
  44.     {
  45.         printf("%d   %d\n", i, valeurs[i]);
  46.     }
  47.             
  48.     return 0;
  49. }

n°208741
WipEout 20​97
Do you think we can fly
Posté le 28-05-2018 à 20:25:58  profilanswer
 

j'avais vu cette histoire de string, faut voir ça en détail  [:froghettosky62:2]  
je tiens a préciser que ma chaine n'a évidemment pas obligatoirement cette forme, j'ai des valeurs que je peux envoyer sous n'importe quelle forme et j'avais choisi celle la pour tester :o

n°208742
rat de com​bat
attention rongeur méchant!
Posté le 28-05-2018 à 20:34:38  profilanswer
 

Cette forme n'est pas trop mauvaise, avec un coup de strtok le traitement est facile (non?).

n°208768
WipEout 20​97
Do you think we can fly
Posté le 28-05-2018 à 21:41:31  profilanswer
 

Bon je vais déjà éclaircir cette histoire de comm bluetooth qui me semble pas bien claire...
entre les modes CENTRAL / PERIPHERAL, la console série qui semble pas toujours accessible... Je suis perdu, en gros :
 
Si je fais un print dans le code du PERIPHERAL ça apparaît bien dans la console du CENTRAL (c'est comme ça que j'ai récupéré les données lisibles avec la vitesse etc)
 
Mais dans l'autre sens j'ai que dale qui apparaît. Du coup je me demande si ça a une influence sur ce que jeux faire, si c'est vraiment comme une liaison filaire, etc...

n°208794
Nitescent
Posté le 29-05-2018 à 00:11:29  profilanswer
 

ObsydianKenobi a écrit :

Alimenter un potentiomètre?


Bah, faut mettre le +5V d'un côté, la masse de l'autre
et lire la valeur au milieu, non? :o
 
 
 
 
 
 
Autre petite question, j'ai un module radio avec 4 sorties et une télécommande avec 4 boutons;
quand on appuie sur un bouton ça envoie 5V dans la sortie correspondante.
Est-ce qu'il faut protéger l'entrée de l'arduino qui va lire ce 5V? Une résistance de limitation de courant ou je sais pas quoi? :o  
 
Et pareil que pour le potentiomètre, si ce 5V n'est pas "fabriqué" par l'arduino, ça ne pose pas de problème de lui envoyer?
Il y a le 5V créé par l'abaisseur de l'arduino, le 5V qui provient du module externe, on peut mélanger ces deux 5V différents?  [:transparency]

n°208813
dafunky
Posté le 29-05-2018 à 08:29:15  profilanswer
 
n°208849
Nitescent
Posté le 29-05-2018 à 11:06:16  profilanswer
 

Est-ce qu'on peut envoyer n'importe quel 5V dans les entrées d'un arduino en gros? :o


---------------
Photos astro sur Flickr | Observatoire astronomique à distance Youtube
n°208854
Nitescent
Posté le 29-05-2018 à 11:18:56  profilanswer
 

Bon, j'imagine que oui,
mais maintenant je me méfie depuis que ça m'a défoncé mon ordinateur,  
quand mon alimentation externe de 5V pour l'arduino, les capteurs et les modules, se mélangeait avec les 5V de l'USB

n°208874
Manisque
Posté le 29-05-2018 à 11:48:19  profilanswer
 

En admettant que la source que tu utilises pour ton potar sort 5.01V et que celle qui alimente ton Arduino sorte 4.99V, la référence ne sera pas forcément la même et du coup tu auras une légère erreur de mesure, mais dans le cas où le potar est au maximum de sa course, tu auras une faible résistance et une différence de tension qui peut abimer ton MCU (même si les pins ont assez de résistance DC et des diodes ESD solides pour limiter la casse).

 

C'est surtout un problème quand on se trompe de rail d'alim et qu'on balance du 12 ou du 24V directement dans un pin [:tinostar].
Tu peux aussi avoir des soucis si tes masses ne sont pas vraiment au même potentiel (câblage crade :o) ou que la tension que sort ton potar peut descendre en dessous du rail 0V de ton Arduino.

 

Maintenant je rajoute souvent une résistance série entre les connecteurs et les pins d'entrée (c'est surtout pour rendre la chose idiot-proof).


---------------
Si tu bois froid juste après le potage chaud, ça va faire sauter l'émail de tes dents - Monorailcat iz ohverin
n°208891
Nitescent
Posté le 29-05-2018 à 14:07:49  profilanswer
 

Ah voila, c'est un peu mieux formulé là :o
 
Pour l’imprécision du potentiomètre je m'en doutais bien, mais ce que je me demandais c'est si ça pouvait poser des problèmes, et apparemment oui.
 
Donc pour avoir un truc fiable qui dure dans le temps, il faudrait alimenter tous les composants qui renvoient des signaux vers l'arduino avec le 5V produit par l'arduino?
 
 
Là j'ai une alimentation de PC qui me fait le 5V, (5,1V plus précisément je crois) et je veux alimenter tous les composants et modules avec.
Pour l'arduino par contre je mets un step-up qui me fait du 7V. Donc le 5V créé en interne par l'arduino ne sera pas exactement le même que celui de l'alim PC.
 
Donc le problème est de savoir quoi alimenter avec quel 5V? :o
Pour le servomoteur par exemple, c'est une alimentation de puissance donc pas de problème à utiliser les 5,1V de l'alim PC puisqu'il n'y a rien qui repart vers l'arduino.
Le potentiomètre par contre c'est un signal qui part vers l'arduino, donc il vaut mieux y balancer un 5V avec toutes les bonnes références donc -> 5V de l'arduino.
 
Et du coup mon module radio qui envoie un signal quand on appuie sur la télécommande, si je l'alimente avec l'alim PC à 5,1V, il va renvoyer 5,1V sur la sortie, et si je le lis avec une entrée digitale de l'arduino -> problème? :o
Les résistances sur les entrées c'est pour faire un peu chuter la tension? Mais ça protège pas d'un 12V qui se faufilerait là, si?  
 
Normalement j'ai pas besoin de protections idiot-proof pour ce montage, je dessine un petit PCB pour que ce soit propre et que ça ne bouge plus :o
Mais des protections pour que ça dure dans le temps, je ne dis pas non  :jap:


Message édité par Nitescent le 29-05-2018 à 14:18:21
n°208925
Manisque
Posté le 29-05-2018 à 20:12:37  profilanswer
 

TL;DR :o
Moins de blabla, plus de schéma :o.
 
Une résistance toute seule n'est pas forcément utile, mais tu peux y ajouter des diodes, des buffers ou un peu ce que tu veux.
 
Mais en général, c'est une bonne pratique de séparer les alims de puissance et de commande.
 
Tu peux regarder ça, ils expliquent assez bien les astuces pour avoir des trucs safe en économisant des composants :  
http://ww1.microchip.com/downloads [...] er%208.pdf

Message cité 1 fois
Message édité par Manisque le 29-05-2018 à 20:47:43

---------------
Si tu bois froid juste après le potage chaud, ça va faire sauter l'émail de tes dents - Monorailcat iz ohverin
n°208927
delatruel
Posté le 29-05-2018 à 20:23:29  profilanswer
 

Manisque a écrit :

TL;DR :o
Moins de blabla, plus de schéma :o.
...
Tu peux regarder ça, ils expliquent assez bien les astuces pour avoir des trucs safe en économisant des composants :  
http://ww1.microchip.com/downloads [...] oc/chapter 8.pdf


 
tu peux éditer ton lien  :o  

n°208983
Profil sup​primé
Posté le 30-05-2018 à 09:44:43  answer
 

rat de combat a écrit :

Si je comprends bien tu as cette chaîne de caractères et tu sais pas comment la traiter c'est bien ça? Je sais pas si en C++ il  y a plus élégant mais si on se limite au C tu peux utiliser strtok() pour découper ta chaîne en morceaux et atoi() pour convertir en nombres avec lesquels tu peux ensuite faire des calculs ou les afficher sur ton LCD.
 
Un petit exemple (compilable et fonctionnel sur PC, c'est pratique la portabilité du C :) ):

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. //à ajuster
  6. #define STRING_MAX 25
  7. #define NB_VALEURS_MAX 5
  8.  
  9.  
  10. void recevoir_msg(char* c) //émulation bidon de la fonction BT
  11. {
  12.     strcpy(c, "18300,35,31,74,59" );
  13. }
  14.  
  15. int main(void)
  16. {
  17.     char msg[STRING_MAX];
  18.     
  19.     recevoir_msg(msg); //à ajuster
  20.     
  21.     int valeurs[NB_VALEURS_MAX];
  22.     char *ptr;
  23.     int i=0;
  24.     
  25.     
  26.     //1ere valeur
  27.     ptr=strtok(msg, "," );
  28.     valeurs[i++]=atoi(ptr);
  29.     
  30.     //et le reste
  31.     while((ptr=strtok(NULL, "," )))
  32.     {
  33.         valeurs[i++]=atoi(ptr);
  34.     }
  35.     
  36.     //nous avons stockés i valeurs
  37.     
  38.     //en faire quelque chose
  39.     //...
  40.     
  41.     
  42.     //debug: afficher tout le tableau    
  43.     for(i=0; i<NB_VALEURS_MAX; i++)
  44.     {
  45.         printf("%d   %d\n", i, valeurs[i]);
  46.     }
  47.             
  48.     return 0;
  49. }



Ou strtol à la place de atoi.
http://www.cplusplus.com/reference/cstdlib/atoi/

Citation :

If the converted value would be out of the range of representable values by an int, it causes undefined behavior. See strtol for a more robust cross-platform alternative when this is a possibility.


 
strol(ptr, NULL, 10);
 
En plus on peut facilement changer la base.

n°209020
jimbofarra​r
Poreux de la cafetière
Posté le 30-05-2018 à 12:04:17  profilanswer
 

WipEout 2097 a écrit :

Salut les Arduineurs,
je viens ici pour vous présenter mon projet, et bien sur j'aurais quelques question car je bloque un peu...
snip


 
Plutôt que d'interpréter une chaine il est peut-être plus judicieux d'utiliser une structure de données du genre :
 

Code :
  1. typedef struct  {
  2.   unsigned int RPM; // 2 octets
  3.   byte speed;       // 1 octet
  4.   byte fuel;        // 1 octet
  5.   byte tempMot;     // 1 octet
  6.   byte tempESC;     // 1 octet
  7.   float voltBat;    // 4 octets
  8.   float voltBEC;    // 4 octets
  9. }telemetryStruct;
  10. telemetryStruct telemetry;


 
Ainsi tu as 14 octets à envoyer et recevoir.
 
Côté émission tu mets ce bout de code dans la loop :

Code :
  1. Serial.write('T');
  2. hand_return = handshake();
  3. if (hand_return == 'R'){
  4. sendData();
  5. }


 
Et tu rajoutes ces 2 fonctions :

Code :
  1. byte handshake(){
  2. int data = 0;
  3. while (data == 0){
  4.   if (Serial.available() > 0){
  5.    data = Serial.read();
  6.    }
  7.   }
  8. return data;
  9. } // End of handshake
  10. void sendData(){
  11. for(int i = 0; i < 14; i++){
  12.   Serial.write(*((char*)&telemetry + i));
  13. }
  14. }


 
Côté réception dans la loop :

Code :
  1. com_data = handshake();
  2. if(com_data == 'T'){
  3. Serial.write('R');
  4. receiveData();
  5. }


 
Les 2 fonctions utilisées :

Code :
  1. byte handshake(){
  2. int data = 0;
  3. while (data == 0){
  4.   if (Serial.available() > 0){
  5.    data = Serial.read();
  6.    }
  7.   }
  8. return data;
  9. } // End of handshake
  10. void receiveData(){
  11. byte receivedData;
  12. int bytesReceived = 0;
  13. while(bytesReceived < 14){
  14.   if(Serial.available() > 0){
  15.    receivedData = Serial.read();
  16.    *((char*)&telemetry + bytesReceived) = receivedData;
  17.    bytesReceived++;
  18.   }
  19. }
  20. } // End of receiveData()


---------------
Bien des Shubs et des Zouls furent calcinés dans les profondeurs de l'énorme Sloar, en vérité, je vous le dis !
n°209033
WipEout 20​97
Do you think we can fly
Posté le 30-05-2018 à 13:35:18  profilanswer
 

Ok merci je commence à mieux comprendre comment structurer :Jap:
En plus j'ai fini par piger les soucis de priorité entre USB / BT / Serial, et j'ai compris qu'il fallait éviter d'utiliser la console série sinon ça foire la comm :o donc j'attends mon écran pour avoir une sortie visible

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  155  156  157  ..  264  265  266  267  268  269

Aller à :
Ajouter une réponse
 

Sujets relatifs
* Réparations de vos appareils électroniques & electromenager * 
Plus de sujets relatifs à : [arduino] Topic Unique blabla @ Arduino


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR