This project was inspired by the Beirut explosion that happened a few months ago. After watching the news of the Beirut explosion on TV and the damaged it caused I thought to myself how can I help prevent something like this happening again and in the event it does happen how can I help the people who need help or stop the next accident from happening and that's when I thought about ARVA.
The Objective:ARVA is part of a series of emergency robots concepts I'm developing. Her objective is to monitor known places or go into unknown places and send back data of the temperature, humidity and gas detected values to the user via an android app. A camera is supposed to attached to the front to send video playback to the operator.
The Story:Now that I had a goal the first thing I did was to plan how I could achieve it. I come from Nigeria and here its very difficult to get parts. Honestly I would have preferred to design the robot chassis myself but I don't have access to a 3D printer so I had no choice than to order it online.
Ordering it online was very time and money consuming. I regretted it. The first time I ordered the chassis although I did see in the description that it'll come with its own custom motor driver + motor shield I thought I could still manage it because it was also coming with a Cd filled with the documentation. I decided to go for this particular one because it came with the most parts at the cheapest price. After waiting a month it finally arrived. I immediately started working on the robot. The first thing I noticed was some of the screws were missing but I thought this wasn't a problem I would just use broomsticks to make it work (There was still a curfew in my country so I couldn't go out to get screws). after building the chassis I decided to try out the motor driver + sensor shield so I opened the CD and guess what, all the files were in Chinese I don't speak or understand Chinese and the description said nothing about this. I didn't want to return the parts because I just waited a month to get them but after searching the internet and finding zero information about the shield I decided to return it and order one with parts that I could easily information about even though it'll cost me more. After another month the new kit finally arrived although it came with fewer parts than described and than the first kit even though it was by far more expensive but I didn't want to return it because I've waited for 2 months in total to get the parts. Its funny how this kit didn't also come with complete screws. After assembling the kit I decided to test the motors. Would you believe the motor driver wasn't working This was an absolute deal breaker for me I had to return it. After searching for a while I finally found a guy who sells Arduino stuff although he doesn't have a lot of stuff he had the essential things I needed to get started and yes this one also didn't come with complete screws. I don't know if that's just how they come but please tell me if you had a similar situation with your kit if it looks like mine in the comments.
After getting the kit things were going smooth at least I thought so until I couldn't get my motor drivers to last long with 9v batteries or even work at all with AA batteries. After a little research I decided to try Li ion batteries which worked like a charm. The problem was the AA and 9v could not supply enough current for my 4 motors. I got the Li ion batteries from 2 rechargeable speakers I found to test it. I also had to make my own battery holders because I couldn't find any and it was expensive online😅
(You're probably looking at the paper tape and rubber band right now and laughing😂😂 well this is what happens when you don't design your chassis yourself you end up having to use a lot of glue, paper tape and cardboard to work😂😂 )
Now the next step I took was to test all my motors and motor driver by making a simple IR controlled robot which was successful. The next step for me was to pick which sensor I should use for autonomy an Ultrasonic Sensor or IR sensor. Initially I used an ultrasonic sensor and I had a lot of problems. My first problem was depending on the angle the robot was moving it might crash, the second was I realized it was having a hard time detecting fabric and the last was when it got to a wall it just froze up. After a few redesigns and research. I managed to solve the first issue and understand the second. The reason I had the first issue was because of the false readings the Ultrasonic Sensor gives when the distance of the object is less than 3/4 cm and the reason for the second issue is because fabrics don't reflect enough energy back to the ultrasonic sensor. While I was testing the robot crashed again and this time it damaged my only servo so considering all the factors I decided to make the switch to IR which I actually ended up preferring because it was more crash resistant. ( Of course the IR robot was more crash resistant than the ultrasonic one I mean I made the ultrasonic sensor holder with cardboard, glue and paper tape😪)
Now that I started using IR the robot performed a lot better although I was still having the third issue I mentioned earlier and a new one. The new one was the Arduino kept on resetting by its self especially when it faces a wall but this was easy to solve with a little research I found out that most of the time if your micro controller ever resets itself then its because its not getting enough current so I started using 3 batteries instead of 2 and that solved the issue. The third issue I mentioned previously took the longest to fix and was the most annoying. The fix was so simple I feel dumb every time I remember it. The reason it froze up anytime it faces a wall is because I didn't call a function properly 😪 instead of calling backMov(); I called backMov; that's why it did nothing. Honestly I wish the IDE gave me a warning or something rather than compiling the code I would have saved myself so much time😭😭 but at least I learned to always check the line of code where I'm having problems with carefully. (it's funny how I rewrote the code and made the entire thing easier but still made the same mistake)
After fixing most of my issues it was time to test it all out and see how it performs. During my tests I did not attach a camera (my mom's smartphone actually😅) to avoid damaging the camera. After multiple tests I modified my code and app a bit. I first decided to add a slider to control the speed of the robot and I added a few buttons for control in case the robot gets stuck or the user just wants to take a particular path and that was it. I successfully built my concept robot.
It might have taken me a while to finish this project and because of some of the issues I had I got frustrated a lot but i'm really happy I managed to finish it.
Future plans:- I intend on buying a raspberry pi when I have enough money so I can use ML to make autonomy a lot better.
- I also plan on changing the chassis hopefully ill find someone or place where I can 3D print.
- I also hope I get access to AR or VR glasses so I can create a way to send information to it instead and also use it to control the robot.
- I want to change the Bluetooth module to a WiFi module instead for better controller device connection or maybe a LoRa or HC 12 module.
If you have any questions or Ideas on how I can make it better please leave a comment thank you 🙂
Comments
Please log in or sign up to comment.