RFIDRW-E-232 avec le GPIO

Le connecteur GPIO du Raspberry Pi, comment l'utiliser sur les Mode A, B et B+

Modérateur : Francois

Répondre
Ferdiix
Messages : 3
Enregistré le : ven. 28 juil. 2017 16:38

RFIDRW-E-232 avec le GPIO

Message par Ferdiix » ven. 28 juil. 2017 17:26

Bonjour a tous !
J'ai récemment fait l’acquisition du lecteur RFID RFIDRW-E-232 dont voici la description détaillée : http://www.priority1design.com.au/rfidrw-e-232.pdf
et de quelques badges.
L'objectif serais de réussir a utiliser ce lecteur à travers le GPIO d'un Raspberry pi 3 et de récupérer les information par python (2.7.9).
Si j'ai bien compris ce que la documentation nous dit on reçoit les information par une communication série qui s'opère via les pin Rx et Tx du raspberry.
Je suis donc après quelque tentatives arriver à ce morceau de programme

import serial
ser = serial.Serial('/dev/ttyS0',timeout=None, baudrate=9600, xonxoff=False, rtscts=False, dsrdtr=False )
while True:
bytesToRead = ser.inWaiting()
data=ser.read(bytesToRead)
print data

et au lancement du programme cela m'affiche des par centaine et deux ligne vide au moment ou je passe le badge rfid.
Je suis donc preneur de la moindre idée qui pourrais me guider vers une solution pour l'utilisation de ce lecteur.
Et merci a l'avance de vos réponses !!!

guillaume9344
Raspinaute
Messages : 629
Enregistré le : mar. 6 janv. 2015 19:44
Localisation : finistere

Re: RFIDRW-E-232 avec le GPIO

Message par guillaume9344 » ven. 28 juil. 2017 17:51

Bonjour, je ne suis pas expert en python , mais dans votre boucle principal , vous affichez à chaque boucle la variable data, donc même quand celle-ci et vide (pas de réception uart), ajoutez un test dans la boucle "si byte to read non vide alors lire data, afficher data , vider data "
Je pense que la fonction ser.inwaiting renvoi le nombre de byte à lire , si elle renvoi 0 c'est qu'il n'y a rien de reçu,
@+
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam

Ferdiix
Messages : 3
Enregistré le : ven. 28 juil. 2017 16:38

Re: RFIDRW-E-232 avec le GPIO

Message par Ferdiix » ven. 28 juil. 2017 18:45

Merci de ta réponse, j'ai revérifier ce que fait ser.inwaiting et il se trouve que sa fonction est de renvoyer le nombre de caractères dans le buffer cependant voici le résultat en image de ce que j'obtient (les nombres viènnent d'un print bytesToRead) : https://postimg.org/image/fhpj2gsq3/
L'espace blanc est ce qu'il ce passe lorsque je passe un badge. Je présume que cela signifie que le buffer contient des caractère même lorsque le lecteur RFID n'est pas en action ? Si oui d'ou peuvent-ils venir car je n'ai rien d'autre que mon lecteur rfid de brancher sur Rx et Tx.

spourre
Raspinaute
Messages : 735
Enregistré le : lun. 22 déc. 2014 16:50
Localisation : 67380 LINGOLSHEIM

Re: RFIDRW-E-232 avec le GPIO

Message par spourre » ven. 28 juil. 2017 19:13

Bonjour,

Je ne suis même pas débutant en python :evil:
Avec un périphérique qui sort sur une liaison série, avant même de programmer une ligne en quoi que ce soit, je commencerais à tester la liaison (vitesse, parité, taille du mot, flux, croisement RX/TX ...) avec un bête programme de terminal.
Le plus simple étant un simple cat < /dev/tty..
ou, plus élaboré, un minicom ou un screen.

J'ai lu la doc en diagonale, le capteur accepte aussi des ordres sur sa ligne RX. (j'ai bien aimé la commande RAT pour lire le tag d'un chien :mrgreen: )
J'ai aussi vu qu'il demande une tension d'alimentation minimum de 5.5V : DANGER, le GPIO du Raspberry ne supporte que 3.3V !

Sylvain

Ferdiix
Messages : 3
Enregistré le : ven. 28 juil. 2017 16:38

Re: RFIDRW-E-232 avec le GPIO

Message par Ferdiix » ven. 28 juil. 2017 20:28

J'avais déjà tenter de faire un minicom sur la liaison série et voila ce que cela affichait quand je le lançais ³ÙõVöööÖٖÖVֶöV (la commande que j'ai utiliser pour cela est : sudo minicom -b 9600 -o -D /dev/ttyS0) cependant je vien de réaliser que mon rs232 est directement brancher sur mon gpio sans passer par un convertisseur 5V ver 3.3V. Je pense que je vais donc acheter ceci pour palier au problème : Ultra Compact RS232 to TTL Converter with Female DB9 (3.3V to 5V).

spourre
Raspinaute
Messages : 735
Enregistré le : lun. 22 déc. 2014 16:50
Localisation : 67380 LINGOLSHEIM

Re: RFIDRW-E-232 avec le GPIO

Message par spourre » ven. 28 juil. 2017 22:43

Ça me semble être une sage précaution pour la survie du GPIO, voire du Pi.
Minicom a un mode paramétrage où l'on peut ajuster finement les paramètres de la liaison et les sauvegarder dans un fichier de configuration.
Si cous envoyez directement un ordre avec un echo par exemple, n'oubliez pas de terminer la chaîne par \n.

Sylvain

Répondre

Retourner vers « Le GPIO »