Autonomous Medical Conveyance Bot

Published Jun 27, 2022
 60 hours to build
 Intermediate

I have built a bot with the line follower technique and designed an arena of a hospital environment which makes a pathway for a bot to navigate to its destination. As it is remotely controlled, the doctor can instruct the robot to deliver certain medications to a particular patient through voice commands.

display image

Components Used

MCP3002 10-Bit ADC
MCP3002 is a dual channel 10-bit ADC (Analog-to-Digital Converter)with SPI interface.
1
RGB LED
RGB LED
1
Lithium Ion Battery 3.7V 2500mAh 18650
Consumer Battery & Photo Battery 3.7V 2500mAh
2
N20 DC Motor - 6V with 1:100 Gear Ratio
Adafruit Accessories N20 DC Motor with Magnetic Encoder - 6V with 1:100 Gear Ratio
1
Raspberry Pi 3 - Model B
Single Board Computers The factory is currently not accepting orders for this product.
1
Caster Bearing Wheel
Adafruit Accessories 20mm Height Metal Caster Bearing Wheel
1
L9110H H-Bridge Motor Driver
Motor/Motion/Ignition Controllers & Drivers L9110H H-Bridge Motor Driver for DC Motors - 8 DIP - 2.5V-12V 800mA
1
Toggle Switches
Toggle Switches 20A 12VDC, On-Off, SPST, Red LED
1
GPCB
PCBs & Breadboards PadBoard-3U 2 sided with plated holes
1
Bi-Directional logic Level Converter
Daughter Cards & OEM Boards Logic Level Convert Bi-Directional
1
SmartElex RLS-06 Analog & Digital Line Sensor Array
This Sensor Array is used to follow the line using the six analog output from the sensor.
1
DC 12V KK-P20/15 3KG Lifting Solenoid Electromagnet
This Electromagnet is used as a smaller version of vacuum gripper where the object is attached and detached by energizing and de-energizing the coil.
1
Description

AUTONOMOUS MEDICAL CONVEYANCE BOT

OBJECTIVE:

  • To deliver drugs to  quarantined patients automatically without manual indulgence by identifying doctor’s prescription smartly.
  • To make prototyped hospital arena design.
  • Designing of bot which will be trained to pick up medicines from warehouse and deliver it. 

INTRODUCTION:

  • Nowadays providing  medical assistance to the required patient  promptly were one of the challenge the Health sector is currently facing  and this was truly evident in the covid pandemic situation.
  • Also Delivering  drug  manually to the patients in a contagious unit like covid unit in which virus transmitted through respiratory droplets  is life threatening and this situation lead to rise of automated bot to procure its position as a game changer.
  • Many automated robots are built to reduce physical labour in the process of delivering medicine to the patients despite have their own demerits, hence they need some advancements. 


 

ALGORITHM DESIGN:

    The working algorithm is shown above, in which the doctor instructs the bot to deliver medicines to the respective patient's location via voice command. The bot then processes the voice command and stores the name and the destination of the patient’s bed. The bot connects to the google database and fetches the location of that particular medicine from the warehouse. After knowing the location of the medicine in the warehouse, the bot finds out the shortest path required to reach the medicine in the warehouse using a Path Planning Algorithm and starts moving towards that location following that path. Once it reaches the warehouse, it picks (attaches) the required medicine. After picking, it retrieves the patient's bed number data and makes it the new destination to which it applies the Path Planning algorithm to find the shortest path and marches towards it. Once the patient's bed is reached, the bot places (detaches) the medicine on the table. Then it checks for the availability of the further request in the stacks, if it ain't empty, it proceeds to fetch medicine location details from the database and delivers them in the same procedure to the respective patient's table. If the stack is empty, meaning all the medicines are delivered to the respective patients, the bot goes to the Dock station, gets itself charged, and waits for a further command from the doctor.

ARENA DESIGN:

    The Arena was designed to clone to the hospital environment and hence I referenced few hospital layouts, which was shown in Figure 4.2. Initially I thought of having it in a 7x7 feet layout and hence I decided to make the arena in a square layout divided into four parts. In which there can be three different rooms with different patient configurations and another room for warehouse where all the medicines can be stored for the bot to pick and place easily.

    The line follower is implemented by making the line width as 0.75inch for the robot to traverse along with it. In addition, the nodes are made with a 2-inch diameter for the line sensor to correctly identify it as a node. The below Table shows the dimensions of the arena design.


    The Final Design of the Arena is shown above in which all the three different rooms were designed with different configurations and named ICU, General Ward, and Covid Ward. All the medicines are stored in the warehouse where the locations of medicine are represented by a small green box whereas the locations of the patient are represented by the blue rectangle.

    All the nodes were named with numerical numbers and for each length of the line ,a particular weight is assigned which will be helpful to feed the whole Arena as a graph to the path planning algorithm. Directions were also defined and separate graph was constructed to represent directions. Unique Alphabetic names were given to patient numbers for easy identification and unique numbers were assigned to all the medicines for easy identification. Above Figure shows the Arena with Nomenclature for all the nodes.

BOT DESIGN:

    The Bot was designed from the scratch, we used Electric sun board for chassis which is drilled and cut according to the dimensions. Bot is designed with two wheels and one caster wheel. A custom Prototype board was designed with some parts in it to reduce the usage of wires in it. N20 Motors were used for the bot and L9110S DC Stepper Motor Driver Board was used to drive the motors. Since the signal from the Raspberry Pi can only be 3.3v Signal it is amplified to 5V by using a bi-directional Level Converter module. A buck converter is used to supply constant 5V supply to all the components including the line sensor. Since RSP doesn’t comes with a inbuild ADC we used MCP3008 to send the Analog Line sensor data to the Rasbperry Pi. The Complete PerfBoard design is shown below.

    Finally, all the components were assembled with the help of screws and studs and the Prototype Board was placed on the spaced between the two floors. Battery is placed on the top section and the Raspberry Pi is placed on the adjacent to the Battery. The Led Array is placed on top of the battery with a double side tape between them. The Electromagnet is placed on the front side of the bot, so it will be easy to pick and place the blocks with the help of the Electromagnet. The wires were reduced as much as possible in order to avoid malfunction due to loose connections, which is very common in these type of Bot. As it moves it will have more vibrations and motions which might leads to loose connections and hence we were careful on that. Only few jumper wires were used and they were tightly held in position. Above figure Shows the Final Bot Design.

DEPLOYING VOICE RECOGNITION AND SENDING DATA TO THE DATABASE:

    The python library SpeechRecognition was used to get the specific sentence like “GIVE TO PATIENT .” and python programming was used to decode the medicine name and number separately from the voice command. Then finally, the separated medicine name and patient number were searched on the database and the decoded medicine name and patient alphabetic ID is transferred to the database via Firebase library using python. Below Tables Shows the sample database used for patient locations and medicine locations respectively. 

    The latency between the sending and fetching of data from the Google Firebase database was very negligible and hence it is perfect for embedded system applications. In addition, voice recognition, which used SpeechRecognition, works well almost all the time during testing. To reduce the computation load on the embedded application we have used Google SpeechRecognition, which works in online mode. We can also program the system to work in complete offline mode. The below Figure shows the data being transferred from the user to the Firebase database along with the date and time for Entry purposes.

ALGORITHM DESIGN:

    We used Dijkstra as the path planning algorithm. Dijkstra's algorithm allows us to find the shortest path between any two vertices of a graph. It differs from the minimum spanning tree because the shortest distance between two vertices might not include all the vertices of the graph. We first converted the whole arena into a 51x51 matrix in which we applied Dijkstra and end up with another 51x51 matrix from which the shortest path can easily be found. The Arena is again converted into another 51x51 direction matrix from which the bot can easily estimate the direction and traverse accordingly. The Arena matrix is shown in the below figure. At first, the path from the current node to the medicine node is estimated then once the medicine is picked, form the warehouse, it again calculates the path from the current node to the patient node and executes it. Once the destination is reached, it drops the object and waits for a further call from the user. 

FINAL OUTPUT:

REFERENCES:

Codes

Institute / Organization

Madras Institute of Technology, Anna University
Comments
Ad