[PROJET] un paiement sans les mains !

Bonjour à tous,
Je ne suis pas un grand expert en électronique et j'ai commencé depuis peu avec Arduino. Dans le cadre de mon travail (automaticien de test logiciel), on a enfin décidé de réaliser des actions physiques sur des terminaux de paiement, surtout ceux liés à la mobilité (tablettes).
Mon tout premier projet a été de réaliser un paiement sans contact par le biais d'un "bras" qui dépose une carte bancaire sur le terminal. On est plutôt satisfait car ça rentre dans notre dynamique de compléter nos tests par du "vrai" paiement physique.
Bien évidemment, le sans contact a ces limites (max de paiement par jour, plafond etc). Notre prochaine étape est donc de passer au paiement avec insert de la carte.
On se retrouve avec plusieurs contraintes :

  • Comment insérer la carte ?
  • Comment saisir le code ?
  • L'espace dans lequel ce sera stocké.
    Pour la première, nous avons pensé à un moteur pas à pas avec interrupteur d'arret (je ne connais pas encore tous les termes :slight_smile: )

    Pour la deuxième, nous avons réfléchit et orienté notre choix vers du solenoide. 5 suffiraient. 4 pour le code et 1 pour le bouton Valider.

    Nous avions aussi pensé à des actionneurs linéaires mais cela prend de la place et pas sur de pouvoir tous les mettre sur un seul arduino mais je peux me tromper.

L'espace de stockage doit être sécurisé. On a donc à disposition des casiers qui ressemblent a ceux des piscines. Espace plutôt restreint.

Le format du terminal est petit : 129 * 71 * 17
L'espacement des touches n'est pas énorme et le solenoide passe juste.

Qu'en pensez vous ? Comment verriez vous ce projet avec votre expérience Arduino ?

Merci d'avance pour vos retours.

Bonjour g_daniel
Pour l'introduction de la carte, le moteur pas à pas et la vis sans fin, d'accord. Pour le clavier, dépendant du type, il faut un "gros" effort et le solenoide devrait aussi être puissant et serait "brusque", je préférerais des servo de modelisme.

Sujet intéressant :wink:

Cordialement
jpbbricole

Bonjour,

4 pour le code!

Cela sous entend que chaque systéme serait pré-réglé pour une seule carte, car 1 clavier, c'est 10 touches, et le code, 4 chiffres (et parfois plusieurs fois le même) donc au maxi 4 touches.

Et aussi pour un seul type de clavier, car ils n'ont pas tous la même dimensions.

Est-ce cela?

Excusez moi, mais votre idée, dans quel contexte cela serait-elle utilisé?

Bonjour,
En effet, on a une seule carte spécimen de test donc un seul code. Possibilité qu'il y ait le même numéro (dans le code) mais pas dans celle qu'on a. On part du principe que notre solution sera modulaire. Si demain le code change, on pourra déplacer les "doigts".
Tous les TPE de la flotte sont du même modèle donc aucun soucis au niveau du clavier
Il ressemble à ça sauf le côté couleur de l'écran.


Il s'agit de réaliser une batteries de tests automatisés le plus proche possible de la production.
Pour l'instant, on cherche un moyen "pas trop complexe" de réaliser un insert de carte dans un TPE avec appui sur les touches du clavier puis retrait de la carte. Il s'agit de test pour une application de vente sur tablette. Jusque là, nous avons réalisé les paiements en espèce mais avec la réussite du paiement sans contact, nous souhaitons aller plus loin.

C'est une très bonne idée. Le servo moteur, par contre, ne s'arrete pas tout seul. Il va sans doute forcer jusqu'a ce qu'on lui dise de s'arreter. Mettre un interrupteur de fin de course pourrait ne pas fonctionner car il faudrait qu'il soit plus dur que le bouton du TPE et pas trop pour qu'il puisse se déclencher :slight_smile:
On a deja fait un essai avec un solenoide. Ca fonctionne bien mais il faut que ce soit a la fin de la course sinon aucune force n'est employée.

Bonjour g_daniel

Pour le clavier, as tu une idée de la pression, en grammes nécessaire?
Pour une version servo, on peut linéariser le mouvement d'un servo ou directement attaquer la touche avec son levier.

Pour le moteur pas à pas, en général il n'y a pas d'interrupteur de fin, mais plutôt un interrupteur de départ qui nous donne, à l'allumage de l'installation, de mettre le moteur à sa position de départ, après pour la course, c'est un nombre de pas à définir.

PS: As tu une imprimante 3D?

A+
Cordialement
jpbbricole

Si vous avez toujours les mêmes dlmensions (hauteur clavier, espacement des touches...) il y a un large choix de solenoides (courses, forces...) permettant d'en trouvé adaptés à vos besoins je pense.

Bonjour g_daniel

Si le solénoïde fonctionne bien, il faut garder cette solution, ainsi vous avez déjà le modèle et ça se commande aisément avec un Arduino au moyen de transistors MOS FET.

Pas tout à fait, il par de 0° et on lui dit d'aller à 110° par exemple qui est l'angle nécessaire à "presser" la touche.
Pour l'introduction de la carte, s'il s'agit de ne faire qu'un va et vient, un servo pourrait être, aussi, envisagé.

A+
Cordialement
jpbbricole

Pour le clavier, as tu une idée de la pression, en grammes nécessaire?
Pour une version servo, on peut linéariser le mouvement d'un servo ou directement attaquer la touche avec son levier.

On n'a pas calculé la pression nécessaire pour l'appui sur la touche. Je note.
Attaquer directement la touche prend de la place. L'idee d'un servo avec un "doigt" nous permettrait de jouer sur la hauteur pour les faire passer au dessus du TPE.

Si le solénoïde fonctionne bien, il faut garder cette solution, ainsi vous avez déjà le modèle et ça se commande aisément avec un Arduino au moyen de transistors MOS FET.

Oui c'est ce qu'on a fait. Arduino + MOSFET + Solenoide. Une seule alimentation de 6V a suffit et est nécessaire car ils ne tourneraient pas tous en meme temps.

Pas tout à fait, il par de 0° et on lui dit d'aller à 110° par exemple qui est l'angle nécessaire à "presser" la touche.

Oui avec la rotation on peut aller jusqu'a appuyer sur le bouton et régler le degré en fonction de la distance du bouton. Mais si ca force l'engrenage risque de s'abimer non ?

Pour l'introduction de la carte, s'il s'agit de ne faire qu'un va et vient, un servo pourrait être, aussi, envisagé.

Pour l'insert de la carte, on avait aussi l'idée des servos. Je pense qu'elle serait plus pertinente car le servo sera plus rapide à insérer. Ca devrait diminuer les erreurs de carte muette ou non lue car pas assez rapide à introduire.

PS: As tu une imprimante 3D?

Oui on peut se débrouiller pour faire de l'impression 3D

Bonsoir g_daniel

Suite des questions :wink:, pour ces tests est ce que la carte doit être entièrement extraite de la fente ou simplement tirée plus ou moins en arrière et de combien de centimètres?

Pour le clavier


Si tu peux facilement choisir quels 4 touches tu veux utiliser, il est facile de disposer 4 servo autour.
Aurais tu la dimension de ce rectangle:

A+
Cordialement
jpbbricole

pour ces tests est ce que la carte doit être entièrement extraite de la fente ou simplement tirée plus ou moins en arrière et de combien de centimètres?

Il faut juste que la puce de la carte ne soit plus en contact. Je dirais 1,5cm : un peu plus que la longueur de la puce.

Si tu peux facilement choisir quels 4 touches tu veux utiliser, il est facile de disposer 4 servo autour.

Malheureusement, on ne peut pas choisir le code. On aurait pris 4*1 :slight_smile:

Qui choisi le code, est ce qu'il sera possible de la faire seulement avec 4 touches +1?
Ou j'ai pas compris :wink:

Je ne suis pas toujours rapide à la détente :wink:

C'est un service externe qui nous fournit les cartes de paiement spécimen. Elles sont générées avec un code à 4 chiffres aléatoires. On leur a demandé si on pouvait en avoir une avec un code "1111" mais il ne leur est pas possible de forcer ce code. Il est basé sur le numéro de la carte et son code luhn.

Donc avec 4 servo, on ne peut pas faire tout les codes?
Ou, plutôt il faut adapter la disposition des servo au code reçu?

On aura pas la place de tous les positionner, je pense.
On a deja le soucis (à 1mm près) pour le solenoide qui est plus fin que le servo si on a 4 et 5 ou 1 et 4 à taper.
Je vérifierais mais il me semble que l'espace entre 2 touches est de 15mm du milieu de la touche au milieu de la deuxieme.

Si tu me donnes les dimensions de ce rectangle, je peux faire une maquette

et on peut faire des bras de servo adaptés.

Est ce que les dimensions hors tout du dispositif qui presse les touches a de l'importance?

on trouve des petits bras robotique pas trop cher de nos jours

ou un peu plus cher ( Braccio T050000)

Encore moi, toujours par curiosité.

A moins que ce soit top secret.

Dans quel genre d'appli une carte de paiement reste +/- insérée dans un TPE et pour lequel il n'y a qu'un seul code carte possible?

Pour la carte, pourquoi vous n'utilisez oas aussi un solenoide avec un ressort de rappel?

Si vous voulez "+/-industrialiser" le systéme et réduire les coûts, il faut simplifier au max, et pourquoi pas vous intéresser par exemple à un Attiny (ça se programme avec l'IDE Arduino).

Il est souhaitable bien entendu, je pense, de se servir de la méca pour cadrer le positionnement et limiter les courses des solénoides.
Et je crois, garder une certaine maitrise du developpement et la réalisation de votre projet, comme vous l'avez fait pour votre premier projet.

Dans quel genre d'appli une carte de paiement reste +/- insérée dans un TPE et pour lequel il n'y a qu'un seul code carte possible?

C'est un exemple, avez-vous deja pris le train ? vous etes vous deja fait controler ? Les controleurs ont des appareils mobiles appairés à une imprimante (pour les factures) et un TPE. Lors d'un PV ou d'une régularisation, il faut payer :slight_smile:
La régul fonctionnera en sans contact jusqu'a 50€ mais une amende il faudra insérer la carte et taper son code pour la régler :wink:
Pour qu'une carte soit lisible dans un terminal de paiement elle doit être enfoncée à fond. La retirer de quelques centimètres ne permet plus de lire la puce et donc pas besoin de l'enlever davantage. On parle de la solution robotisée. Dans la réalité, le client va retirer sa carte et la remettre dans son portefeuille :wink:
Nous avons une seule carte spécimen avec son code associé. Comme n'importe quelle personne qui a une carte de crédit. Pas besoin de gérer plusieurs codes donc 4 touches max sont suffisantes pour le taper.

Si vous voulez "+/-industrialiser" le systéme et réduire les coûts, il faut simplifier au max, et pourquoi pas vous intéresser par exemple à un Attiny (ça se programme avec l'IDE Arduino).

Je parle d'arduino car j'ai commencé avec et parce qu'on est sur le forum Arduino. Bien évidemment si une solution moins couteuse est possible nous partirons sur celle-ci?
Il est important de compléter le projet en indiquant que toutes les actions réalisées par l'arduino le seront via appel API. Je n'ai pas eu l'occasion de tester l'Attiny et sa compatibilité avec le serveur API que nous avons créé pour le pilotage. Certains ont des particularités :slight_smile:

On est plutot R&D sur cette partie car nous n'avons personne qui maitrise l'electronique. C'est plutot un fil rouge quand on a le temps d'avancer. En général, c'est plutot sur le temps libre pour le cote passion :wink:
Déjà obtenir un prototype fonctionnel sera une belle réussite. Pour ce qui est de l'industrialisation, il faudrait que nous ayons d'autres projets qui le souhaitent et pour l'instant nous n'en avons pas la vision.

Pour la carte, pourquoi vous n'utilisez oas aussi un solenoide avec un ressort de rappel?

Il faudrait que le solenoide soit alimenté pendant toute cette période et ca a plutot tendance à chauffer. Le moindre échec de commande et on risquerait un accident :slight_smile:

J'adorerais m'amuser avec ces bras :slight_smile:
Malheureusement, notre systeme devra être conservé dans un casier pour des raisons de sécurité et j'ai bien peur que le bras soit trop grand.