This thesis work presents the control of a Mitsubishi’s 6 DOF (Degrees of Freedom) robot of the RV-Series to classify test tubes according to the blood type (0, A or B) contained in them. Each test tube has attached a readable/writable RFID tag type MiFARE Ultralight® and the classification is made using a shield with the MFRC522 RFID IC from NXP Semiconductor which is is connected to an Arduino UNO R3 board using the Serial Peripheral Interface (SPI). Each RFID tag has a unique 4-bytes UID (Unique IDentifier) which identifies the test tube and the algorithm for the classification has been developed using the Arduino IDE. Moreover, a 16x2 character LCD (Liquid Crystal Display) is connected to the Arduino board and is used to display the blood type reported by the RFID sensor. The standard screw cap of the test tubes has been replaced by a custom 3D printed screw cap so that the pneumatic-actuated gripper of the robot can easily grab it.The Mitsubishi manipulator, following linear trajectories in the operational space, has to approach the test tubes from a rack, bring them closer to the MFRC522 RFID sensor, which classifies the blood contained in the test tubes, and leave it into a second plastic box according to the detected blood type (0, A, B). In order to accomplish the execution of this task, two different levels controllers have been developed: in particular, a low-level one to actuate the motors of the robot joints and a high-level one to make possible the communication between the robot, the sensor output and the PC. The low-level controller has been developed using the CIROS® programming environment which allows to define simple basic tasks that the manipulator has to execute such as open/close the gripper and move to a particular cartesian position with a given orientation. The high-level controller has been developed using the LabVIEW® development environment by National Instruments, whose VI (Virtual Instrument) scheme is composed of some custom elementary function blocks which implement the basic tasks actuated by the low-level controller. The data are sent by the RFID sensor to the LabVIEW VI using the asynchrounous serial communication port emulated over the USB connection between Arduino and the PC, while the commands to the robot are sent using the TCP-IP communication over a wired-Ethernet connection.
Questo lavoro di tesi presenta il controllo di un robot Mitsubishi a 6 GDL (Gradi di libertà) della serie RV per classificare le provette in base al gruppo sanguigno (0, A o B) in esse contenuto. Ogni provetta è dotata di un tag RFID leggibile/scrivibile di tipo MiFARE Ultralight® e la classificazione viene effettuata utilizzando uno shield con RFID MFRC522 IC di NXP Semiconductor che è collegato ad una scheda Arduino UNO R3 utilizzando l'interfaccia periferica seriale (SPI). Ogni tag RFID ha un UID (Unique IDentifier) univoco a 4 byte che identifica la provetta e l'algoritmo per la classificazione è stato sviluppato utilizzando l'IDE Arduino. Inoltre, alla scheda Arduino è collegato un LCD 16x2 caratteri (Display a cristalli liquidi) che viene utilizzato per visualizzare il gruppo sanguigno riportato dal sensore RFID. Il tappo a vite standard delle provette è stato sostituito da un tappo a vite personalizzato stampato in 3D in modo che la pinza ad azionamento pneumatico del robot possa facilmente afferrarlo. Il manipolatore Mitsubishi, seguendo traiettorie lineari nello spazio operativo, deve avvicinarsi alle provette riposte nel rack, avvicinarle al sensore RFID MFRC522, che classifica il sangue contenuto nelle provette, e lasciarlo in una seconda scatola di plastica in base al gruppo sanguigno rilevato (0, A, B). Per assolvere a questo compito sono stati sviluppati due diversi livelli di controllo: in particolare, uno di basso livello per azionare i motori delle articolazioni del robot e uno di alto livello per rendere possibile la comunicazione tra il robot, l'uscita del sensore e il PC. Il controllore di basso livello è stato sviluppato utilizzando l'ambiente di programmazione CIROS® che consente di definire semplici compiti di base che il manipolatore deve eseguire come aprire/chiudere la pinza e spostarsi in una particolare posizione cartesiana con un determinato orientamento. Il controller di alto livello è stato sviluppato utilizzando l'ambiente di sviluppo LabVIEW® di National Instruments, il cui schema VI (Virtual Instrument) è composto da alcuni blocchi elementari personalizzati che implementano le attività di base attuate dal controller di basso livello. I dati vengono inviati dal sensore RFID a LabVIEW VI utilizzando la porta di comunicazione seriale asincrona emulata tramite la connessione USB tra Arduino e il PC, mentre i comandi al robot vengono inviati utilizzando la comunicazione TCP-IP su una connessione cablata-Ethernet.
CLASSIFICAZIONE DEL SANGUE USANDO TAG RFID E ROBOT MANIPOLATORE
D'ALESSANDRO, VITO IVANO
2020/2021
Abstract
This thesis work presents the control of a Mitsubishi’s 6 DOF (Degrees of Freedom) robot of the RV-Series to classify test tubes according to the blood type (0, A or B) contained in them. Each test tube has attached a readable/writable RFID tag type MiFARE Ultralight® and the classification is made using a shield with the MFRC522 RFID IC from NXP Semiconductor which is is connected to an Arduino UNO R3 board using the Serial Peripheral Interface (SPI). Each RFID tag has a unique 4-bytes UID (Unique IDentifier) which identifies the test tube and the algorithm for the classification has been developed using the Arduino IDE. Moreover, a 16x2 character LCD (Liquid Crystal Display) is connected to the Arduino board and is used to display the blood type reported by the RFID sensor. The standard screw cap of the test tubes has been replaced by a custom 3D printed screw cap so that the pneumatic-actuated gripper of the robot can easily grab it.The Mitsubishi manipulator, following linear trajectories in the operational space, has to approach the test tubes from a rack, bring them closer to the MFRC522 RFID sensor, which classifies the blood contained in the test tubes, and leave it into a second plastic box according to the detected blood type (0, A, B). In order to accomplish the execution of this task, two different levels controllers have been developed: in particular, a low-level one to actuate the motors of the robot joints and a high-level one to make possible the communication between the robot, the sensor output and the PC. The low-level controller has been developed using the CIROS® programming environment which allows to define simple basic tasks that the manipulator has to execute such as open/close the gripper and move to a particular cartesian position with a given orientation. The high-level controller has been developed using the LabVIEW® development environment by National Instruments, whose VI (Virtual Instrument) scheme is composed of some custom elementary function blocks which implement the basic tasks actuated by the low-level controller. The data are sent by the RFID sensor to the LabVIEW VI using the asynchrounous serial communication port emulated over the USB connection between Arduino and the PC, while the commands to the robot are sent using the TCP-IP communication over a wired-Ethernet connection.I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/20.500.14253/110280