DRO DRO avec Arduino et PAC chinois

  • Auteur de la discussion scrachi
  • Date de début
J

JCS

Compagnon
Jicer,
Si tu as le temps ce WE, essaie de me faire un fichier vectoriel sous Inskape.
J'ai acheté dernièrement d'occase un IM4 :


Ce sera peut-être plus facile qu'a la main et si ça fonctionne, je pourrai en faire plusieurs...

De toutes façons il faudra souder les fils sur le connecteurs, mais je ne vois pas ou est le problème.

@+
 
?

******

Compagnon
tu veux dire qu'un dessin suffirait ?
bon , je vais voir cela.

j'ai un pied a coulisse chinois

je peu dessiner quelque chose ... mais est si simple ?

Amicalement

jc
 
J

JCS

Compagnon
Salut Jicer,

C'est simplement la technique de fabrication des circuits imprimés.
Il y a 2 façons de faire :
- gravure chimique ou
- gravure mécanique.

Il suffit ensuite de découper proprement, de souder les fils et de coller un
morceau de mousse haute densité qui va coincer et assurer la pression sur les contacts.
Un bon nettoyage à l'acétone avant et un petit coup de KF ou WD40 spécial contacts
et hop !

Ici, la méthode de gravure chimique :


@+
JC.
 
Dernière édition:
P

pinou29

Compagnon
Bonjour à tous.
scrahi, est-il abusé de te demander, si tu en as le temps, de mettre des commentaires sur les lignes de programmation, ça permettrait aux néophytes comme moi de mieux suivre le fonctionnement du programme ?
Merci.
bon week-end.
Bernard.
 
S

scrachi

Apprenti
Bonjour à tous.
scrahi, est-il abusé de te demander, si tu en as le temps, de mettre des commentaires sur les lignes de programmation, ça permettrait aux néophytes comme moi de mieux suivre le fonctionnement du programme ?
Merci.
bon week-end.
Bernard.

Il n'y à aucun soucis, mais je ne voit pas quoi commenter de plus, il y a déjà pas mal de commentaire. Quelle sont les lignes qui te pose problèmes ?

Bonn week-end également.

Mickaël
 
P

pinou29

Compagnon
Quelle sont les lignes qui te pose problèmes ?
Bonjour.
Je serai tenté de te dire "toutes" :-D:-D
Par exemple:

int sign;
long value;
float resu;
int resuTmp;
char msg[20];

int datapinX = 8;
int clockpinX = 7;
unsigned long tempmicrosX;

int datapinY = 10;
int clockpinY = 9;
unsigned long tempmicrosY;

int datapinZ = 12;
int clockpinZ = 11;
unsigned long tempmicrosZ;

LiquidCrystal lcd(6,5,4,3,2,1);

Je pense que les chiffres correspondent aux broches mais de quoi, de l'afficheur ou de la carte Arduino ?
On peut rire mais pas se moquer :smt021.
Merci.
Bernard.
 
S

scrachi

Apprenti
Bonjour.
Je serai tenté de te dire "toutes" :-D:-D
Par exemple:

int sign;
long value;
float resu;
int resuTmp;
char msg[20];

int datapinX = 8;
int clockpinX = 7;
unsigned long tempmicrosX;

int datapinY = 10;
int clockpinY = 9;
unsigned long tempmicrosY;

int datapinZ = 12;
int clockpinZ = 11;
unsigned long tempmicrosZ;

LiquidCrystal lcd(6,5,4,3,2,1);

Je pense que les chiffres correspondent aux broches mais de quoi, de l'afficheur ou de la carte Arduino ?
On peut rire mais pas se moquer :smt021.
Merci.
Bernard.

Alors toutes ces lignes correspondent à l'initialisation des variables. int, long, float ... correspondent a des types en programmation :
int => entier
float => nombre flottant
long => c'est un entier long
char => c'est un caractère donc char msg[20] c'est un tableau de 20 caractère

Ensuite les chiffre correspondent effectivement au broche de l'Arduino.
Par exemple int datapinX = 8; veut dire que le pin data du PAC X est branché sur l'entré 8 de l'arduino.
Pour le LCD qui est initialisé avec la ligne LiquidCrystal lcd(6,5,4,3,2,1); c'est les entrée/sortie de 1 à 6 de l'arduino qui sont utilisé.

Mickaël
 
P

pinou29

Compagnon
Re.
Merci pour toutes ces précisions.
Ça me fait comprendre que j'ai encore du boulot pour tout faire rentrer dans le neurone qu'il me reste.
Bernard.
 
S

speedjf37

Compagnon
[QUOTE="scrachi, post: 1014447, member: 34447"

Par exemple int datapinX = 8; veut dire que le pin data du PAC X est branché sur l'entré 8 de l'arduino.

Mickaël[/QUOTE]
Désolé mais pour moi aucun rapport avec les I/O de l'arduino

int datapinX = 8

C'est la création d'une variable dont le nom est "datapinX" de type entier avec assignation de sa valeur à "8".
Que cette variable serve à lire une entrée c'est ailleurs.
Il serait plus standard d'utiliser un:
# define datapinX 8

Cordialement JF
 
S

scrachi

Apprenti
[QUOTE="scrachi, post: 1014447, member: 34447"

Par exemple int datapinX = 8; veut dire que le pin data du PAC X est branché sur l'entré 8 de l'arduino.

Mickaël
Désolé mais pour moi aucun rapport avec les I/O de l'arduino

int datapinX = 8

C'est la création d'une variable dont le nom est "datapinX" de type entier avec assignation de sa valeur à "8".
Que cette variable serve à lire une entrée c'est ailleurs.
Il serait plus standard d'utiliser un:
# define datapinX 8

Cordialement JF[/QUOTE]

Ne t'excuse pas, tu à entièrement raison, je voulais juste simplifier au max, bossant dans l'informatique et faisant de la programmation toute la journée, je sait qu'il peut être difficile pour un non initier de comprendre, donc je voulais simplifier, mais effectivement tu a donné la vrai définition. Apres pour le # define, je ne sait pas si on peut utiliser des constante avec arduino, étant donné que certe c'est du C mais implémenter parfois étrangement, CF le sprintf qui ne peut être utilisé avec des float...

Mickaël
 
J

jpbbricole

Compagnon
Désolé mais pour moi aucun rapport avec les I/O de l'arduino
Oui, dans l'absolu, tu as raison!
Mais dans un forum de gens qui veulent apprendre facilement une chose assez compliquée, une variable qui se nomme datapinX s'adresse forcément à une broche de l'Arduino.

Il serait plus standard d'utiliser un:
# define datapinX 8
Certainement pas en effet, si tu veux, au cours du programme, changer d'entrée, par exemple, #define corespond à const donc invariable.

L'utilité de #define, pour attribuer une valeur (fixe) à un nom, est d'économiser de la mémoire car cette fonction ne sert que pour le compliateur, donc invariable au cours du déroulement du programme.
 
Dernière édition:
G

gégé62

Compagnon
@pinou29
en tant que "débutant confirmé" (:wink:) je me souviens avoir été un peu désarçonné avec ceci, j'en parle car je n'ai trouvé nulle part une réponse claire:
on fait par exemple en début de programme:

int entree = 7; // la pin 7 s'appelle "entree" (on veut probablement que ce soit une entrée.... :) )
int valeur = 152; // une variable "valeur" est définie, et initialisée à 152

Mais comment arduino peut-il deviner que 7 est le numéro de pin et pas une valeur de variable....

En fait la réponse est évidente. Pour le système, à ce moment là du programme ce sont deux variables et rien de plus. C'est dans la suite qu'on va trouver quelque chose qui n'aura de sens que si la pin 7 est une entrée ou une sortie; par exemple si on le définit dans le setup (obligatoire si c'est une sortie) ou si on va la lire, le système comprendra alors qu'il s'agit d'une entrée. Je suppose que cela se traite au niveau de la compilation.

Si je me suis trompé, on va me corriger !

PS1 je n'ai pas parlé de #define pour définir les entrées et sorties, mais j'ai appris à l'utiliser c'est bien plus élégant
PS2 wika58 va ouvrir un fil arduino consacré aux variables
 
Dernière édition:
J

jpbbricole

Compagnon
Salut débutant confirmé!
L'arduino ne va pas le savoir. Mais toi tu va toujours ou presque utiliser cette variable (entree) avec des fonctions propres aux entrées/sorties comme:

pinMode(entree,INPUT_PULLUP);
pinMode(entree,OUTPUT);
digitalWrite(entree,LOW);
digitalWrite(entree,1);
digitalWrite(entree);
analogRead(entree);
etc.

Cordialement
jpbbricole
 
Dernière édition:
?

******

Compagnon
si je puis me permettre :

un fichier de configuration et un fichier PINS.h (pour les connetions )peut etre creer sans probleme , meme si pas tres academique :

ici le programme pour faire marcher ma regle :
(différent du votre car le mien additionnent les valeurs dans un sens )

mais c'est pour vous montrez que le fichier configuration.h et pins.h s’avèrent tres pratique

https://www.usinages.com/threads/ga...ronique-vers-arduino.88384/page-2#post-992986


amicalement

jc
 
Dernière édition:
N

nike

Ouvrier
Bonjour,
Juste une remarque sur le code: Il ne fonctionne qu'avec des PAC qui sortent l'info distance
sur 16 bits. Au dessus de 16 bits, le décalage du 1 ne fonctionne pas avec l'instruction : value |= 1<<i;
Il faut traiter le décalage sur un entier long donc ajouter L sur l'instruction: value |= 1L<<i;
J'en parle sur deux sujet à propos de DRO et Arduino.
Les connecteurs pour les règles, c'est bien mais ça prend pas mal de hauteur si en plus on protège la règle
( j'ai rien trouvé même en coudé qui soit relativement "plat" ).
Pour générer le 1,5V, j'ai mis deux diodes en série à la place de la résistance qui va à la masse.
Cordialement.
Nike
 
?

******

Compagnon
Pour générer le 1,5V, j'ai mis deux diodes en série à la place de la résistance qui va à la masse.
Cordialement.
Nike
bonjour
merci de ton post !!
Je comprends deux diodes en serie ( 0.6 V X 2 )

Mais je vois pas le schema ?

Amicalement

JC
 
N

nike

Ouvrier
Bonjour,
Je cherche le schéma utilisé ce week-end. Je dois avoir ça sous kicad. J'avais dû réaliser un circuit imprimé.
Cordialement.
Nike
 
N

nike

Ouvrier
Bonjour,
Voici le schéma que j'ai utilisé. Les diodes D1 et D2 donnent la tension d'alimentation des règles ( 1.4V).
Quant au repiquage entre les deux diodes, il me sert à fixer la tension de comparaison des comparateurs.
Cordialement.
Nike Voir la pièce jointe DRO_schema.pdf
 
S

scrachi

Apprenti
Bonjour à tous,

J'ai édité le premier post avec l'ajout des fichiers pour l’impression d'un boîtier qui ressemble à ça :

[div=none]
DSCN2296.JPG
[/div]

Mickaël
 
M

manum01

Nouveau
Bonjour,

Je viens vers vous car j'essaye déséspérement de construire votre DRO, j'ai scrupuleusement fais tous les cablage et copié votre code. J'ai donc réalisé un circuit ONLY X Lorsque je téléverse des signe étrange apparaissent puis plus rien.
J'ai donc réalisé un circuit ONLY X mais rien de plus ( j'ai mis des transistor BC547B est-ce que ce sont les bons?)
Pourriez- vous s'il vous plait m'aider s'il vous plait?
 
M

manum01

Nouveau
Bonjour à tous,

J'ai édité le premier post avec l'ajout des fichiers pour l’impression d'un boîtier qui ressemble à ça :

[div=none]
DSCN2296.jpg
[/div]

Mickaël
Bonjour,

Je viens vers vous car j'essaye déséspérement de construire votre DRO, j'ai scrupuleusement fais tous les cablage et copié votre code. J'ai donc réalisé un circuit ONLY X Lorsque je téléverse des signe étrange apparaissent puis plus rien.
J'ai donc réalisé un circuit ONLY X mais rien de plus ( j'ai mis des transistor BC547B est-ce que ce sont les bons?)
Pourriez- vous s'il vous plait m'aider s'il vous plait?
 

Sujets similaires

V
Réponses
3
Affichages
923
vibram
V
F
Réponses
6
Affichages
25 594
fraiddy
F
Moi33
Réponses
3
Affichages
47 955
speedjf37
S
Faber29
Réponses
8
Affichages
514
Faber29
Faber29
G
Réponses
123
Affichages
19 013
gaston83
G
zygo4619
Réponses
34
Affichages
35 391
zygo4619
zygo4619
T
Réponses
2
Affichages
22 395
Tristan l'apprenti
T
G
Réponses
24
Affichages
13 305
greg_elec
greg_elec
V
Réponses
62
Affichages
5 195
vibram
V
Mcar
Réponses
65
Affichages
11 571
Mcar
Mcar
Réponses
12
Affichages
16 064
albatros_del_sur
albatros_del_sur
G
Réponses
8
Affichages
13 359
JMe87
J
Haut