Pages: [1] 2   Go Down
Author Topic: keypad déporté et arduino  (Read 1669 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 321
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

bonjour a tous
dans le but de pouvoir ouvrir un portail automatique via deux keypad
je souhaite pouvoir déporté un keypad
j'explique un peu le projet
un portail somfy acheter il y a peu
des télécommande fournit avec ( classique )
pour éviter d'acheter une télécommande par personne deux keypad vont être mit en place
un en entrée et un en sortie
celui en entrée recevra une carte arduino
celui en sortie sera déporté d'environ 10m
avec un câble réseau entre les deux

mais trois question reste en suspend

la première:
sur les ligne du keypad certain mettent des résistances d'autre non
utile ou pas utile ?

la deuxième:
de combien puis je déporté le keypad sans avoir trop de "perte" sur les câbles

la troisième:
suis je obliger d'utiliser deux fois 7 pin de l'arduino
ou puis je brancher les deux keypad en parallèle ?

un grand merci à toute la communauté
Logged


0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 321
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

même si j'aime pas faire ça je croit qu'un petit up s'impose
et si des questions subsistent n'hésitez pas a les poser
merci
Logged


Paris
Offline Offline
Full Member
***
Karma: 1
Posts: 180
Beyond the possible...
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

10 metres de CAT5 sa revient plus chère que 3 modules radio.

Les résistances sont peut être des filtres anti rebonds ? apres tout un keypad c'est ni plus ni moins q'une rangé de boutons.

les 2 keypad en para c'est techniquement pas possible.
Logged

The Mind is like a parachute it works best when opened.

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 321
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hum 25€ les 100m de câble réseau en cat 5e
ça fait 25 cts le mètre donc 2.50€ pour les 10m
les modules radio ça vaut rien oui mais faut les géré derrière ( arduino attiny etc )
et faut pas oublier la batterie aussi
donc ça ce tâte au niveau prix

peut être des filtres antirebonds oui je vais regarder de ce coté

les 2 keypads en para c'est techniquement pas possible
la je comprends pas pourquoi
si tu peux m'expliquer je veut bien
Logged


Offline Offline
Faraday Member
**
Karma: 33
Posts: 4964
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hum 25€ les 100m de câble réseau en cat 5e
ça fait 25 cts le mètre donc 2.50€ pour les 10m
les modules radio ça vaut rien oui mais faut les géré derrière ( arduino attiny etc )
et faut pas oublier la batterie aussi
donc ça ce tâte au niveau prix

peut être des filtres antirebonds oui je vais regarder de ce coté

les 2 keypads en para c'est techniquement pas possible
la je comprends pas pourquoi
si tu peux m'expliquer je veut bien

c'est qoui exactement comme keypad ?
à priori si c'est du simple contact , faire un deport en // sur 10m ne doit pas poser de probleme
Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 321
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

oui simple contact
prit sur ebay donc je met un équivalent dx
http://dx.com/p/3x4-matrix-12-key-membrane-switch-keypad-keyboard-117718
je passe du câble réseau pour être tranquille et que ça soit blindé
merci artouste

je retrouve plus le câblage pour un keypad ^^
rien dans la librairie ( http://arduino.cc/fr/Main/LibrairieKeypad )
seulement deux images de google
la première avec des résistances
http://bildr.org/blog/wp-content/uploads/2011/05/keypad_Arduino_Wiring.png
et la deuxième sans résistances
http://imageshack.us/a/img7/2087/keypad4x4arduino1.jpg

voila pourquoi j'ai un doute
Logged


France
Offline Offline
Faraday Member
**
Karma: 36
Posts: 3421
There is an Arduino for that
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
à priori si c'est du simple contact , faire un deport en // sur 10m ne doit pas poser de probleme
Ouai, enfin je serais pas aussi optimiste. Parce que un clavier matricé à 10m il va falloir ralentir le balayage de la matrice et protéger les entrées/sorties sinon va y avoir un maximum d'erreurs de lecture.
Franchement vu le prix d'une carte arduino mini personnellement j'en mettrais une derrière le clavier et je ferai une liaison série pas trop rapide entre les deux.
Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 321
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

juste pour précisé
j'ai dit 10m pour etre large
en pratique j'ai la largeur du portail donc 4m + environ 1m de chaque coté
mais pour faire des comptes rond je part sur 10m
si tu as une idée de code pour la liaison série je suis preneur
je peux donner mon code actuelle si besoin
merci a toi
Logged


Offline Offline
Faraday Member
**
Karma: 33
Posts: 4964
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
à priori si c'est du simple contact , faire un deport en // sur 10m ne doit pas poser de probleme
Ouai, enfin je serais pas aussi optimiste. Parce que un clavier matricé à 10m il va falloir ralentir le balayage de la matrice et protéger les entrées/sorties sinon va y avoir un maximum d'erreurs de lecture.
Franchement vu le prix d'une carte arduino mini personnellement j'en mettrais une derrière le clavier et je ferai une liaison série pas trop rapide entre les deux.
bonsoir fdufnews
peut etre ou peut etre pas  smiley-mr-green
de toutes façons une levée de doute est facile à faire et ne coute rien (ou pas grand chose)
2 embases RJ45 F et une longueur de cable, sur 10m (4 dans le cas exposé) je pense que c'est jouable sans trop de problème.
mais sinon effectivement un petit MCU scan clavier+sortie serie c'est aussi une bonne solution
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 52
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

Je trouve le problème intéressant mais je comprends pas bien l'avantage de la liaison série par
rapport à câbler le clavier sur 10m. Qqn peut en dire un peu plus ?
Logged

Offline Offline
Faraday Member
**
Karma: 33
Posts: 4964
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

Je trouve le problème intéressant mais je comprends pas bien l'avantage de la liaison série par
rapport à câbler le clavier sur 10m. Qqn peut en dire un peu plus ?

ce qu'expose tres justement  fdufnews est que la longueur de cable peut etre problematique (taux de scan de la matrice) en ramassant/recuperant ce qui traine (perturbations) , ce qui entrainerait de l'aberration de lecture.
un petit MCU faisant le scan clavier et transferant en asynchrone bas debit l'info sera plus robuste sur la longueur, avec la  possibilité d'integrer de la verif d'integrité et d'utiliser seulement3 fils de liaisons (VCC GND Data).

C'est le cas typique où l’expérimentation In situ prime pour choisir une solution.
 
Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 321
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

effectivement la liaison série peut être intéressante
mais je vais essayer avec un câble de 10m au même endroits que la ou il sera plus tard
comme ça je serais fixé
si ça passe je reste comme ça
si par contre je récupère beaucoup de merde je passerais sur une liaison série

vous avez répondu a presque toutes mes interrogations
seul une dernière subsistent
l'utilisé des résistance sur le keypad
et ou les mettre ( pour les 10m )
au plus prés du keypad ou au plus prés de l'arduino ?
Logged


Offline Offline
Faraday Member
**
Karma: 33
Posts: 4964
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


seul une dernière subsistent
l'utilisé des résistance sur le keypad
et ou les mettre ( pour les 10m )
au plus prés du keypad ou au plus prés de l'arduino ?
il faut regarder ce que tu utilise comme code pour "lire" le clavier
ce sont des resistances de pull-up
l'arduino en embarque déjà par construction en utilisant cette directive
digitalWrite(pin, HIGH);       // turn on pullup resistors
Logged

0
Offline Offline
Sr. Member
****
Karma: 0
Posts: 321
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

pour le moment j'ai fait un petit code
faut que je le teste dés que j'ai un peu de temps
Code:
/*
||  Ouverture portail avec keypad 4x3
||  Création le 07/04/2013
||  allumage led sur pin 10 quand code mauvais
||  allumage led sur pin 11 quand code bon
||  pilotage opto sur pin 12 quand code bon
*/


//* valide la saisie 
//# reset la saisie

/////////////////////////////////////////////////////////////////

#include <Password.h> //http://www.arduino.cc/playground/uploads/Code/Password.zip
#include <Keypad.h> //http://www.arduino.cc/playground/uploads/Code/Keypad.zip

Password password = Password( "1234" );

const byte ROWS = 4; // 4 lignes
const byte COLS = 3; // 3 colonnes
// Define the Keymap
char keys[ROWS][COLS] = {
  {'1','2','3'},
  {'4','5','6'},
  {'7','8','9'},
  {'*','0','#'}
};

byte rowPins[ROWS] = { 9,8,7,6 };// Connecter le keypad ROW0, ROW1, ROW2 and ROW3 sur les pins
byte colPins[COLS] = { 5,4,3, };// Connecter le keypad COL0, COL1 and COL2 sur les pins


// Création du keypad
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

void setup(){

  keypad.addEventListener(keypadEvent); // ajout d'un evenement keypad
  pinMode(10, OUTPUT);   // mauvais
  pinMode(11, OUTPUT);   // bon
  pinMode(12, OUTPUT);   // opto   
}

void loop(){
  keypad.getKey();
}

// mise en place bouton sup
void keypadEvent(KeypadEvent eKey){
  switch (keypad.getState()){
    case PRESSED:
switch (eKey){
  case '*': checkPassword(); break;
  case '#': password.reset(); break;
  default: password.append(eKey);
     }
  }
}

void checkPassword(){
  if (password.evaluate()){ // action quand code bon
    digitalWrite(11, HIGH); // allumage led bon
    delay(1000);
    digitalWrite(12, HIGH); // opto
    delay(1000);
    digitalWrite(11, LOW);
    digitalWrite(12, LOW);
  }else{                    // action quand code mauvais
    digitalWrite(10, HIGH);
    delay(2000);
    digitalWrite(10, LOW);
  }
}
Logged


Offline Offline
Jr. Member
**
Karma: 0
Posts: 52
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
(taux de scan de la matrice) en ramassant/recuperant ce qui traine (perturbations)

Qu'est-ce qui fait que les perturbations sont moins importantes sur la liaison série ?

Quote
un petit MCU faisant le scan clavier et transferant en asynchrone bas debit l'info sera plus robuste sur la longueur

Désolé mais je comprends pas pourquoi :-( ?

Qqn a-t-il une explication électrique pour expliquer cette différence, c'était la le but de ma question.


Logged

Pages: [1] 2   Go Up
Jump to: