We wanted to try building something with Arduino because none of us had much experience building things with hardware. We decided to create a bot that can drive across a piece of paper and draw pictures. We hoped to use this bot to create visual works of art in a physical medium. This could perhaps bring digital sketches to life or create large works of art.
What it does
Drawbot navigates over a smooth surface. It uses a sharpie to draw on a blank canvas or sheet of paper. We had hoped that the bot would be able to move forward, backward, left, and right. However, in the middle of the project, our motor for driving forward and backward died (probably due to applying too much heat when soldering wires), so our final product could only turn left and right.
How we built it
Drawbot was created using Arduino parts and legos. A large-flat lego piece was used as the base to hold up the Arduino Uno R3 and breadboard. A servo motor was attached to the front of the car to steer the 2 front wheels left and right. In the back, a 3-6v motor was attached to a large lego wheel to drive the bot forward and backward.
Several functions were created to control the movements of the bot. The back wheel was programmed to spin to move the bot forward and backward while the servo motor was programmed to rotate at a specified degree to change the direction of the bot.
Challenges we ran into
In general, it was very difficult to build a hardware project with the conditions of the pandemic. Luckily, two of our members had hardware: one to test on, and the other to actually build our project. This definitely helped us work together more effectively. However, it was still challenging to help debug hardware issues through video calls.
Our biggest hardship for this project was a lack of access to hardware. The team member building the actual project did not have many parts, and we had to make do with what we had. We only had two motors available, making our robot very limited in how it could move. While we were able to build a car with working software, when putting it all together, we ended up burning out one of our motors. Since we did not have any spare motors, we could no longer move forward with our project. This was the biggest problem as it stopped us from being able to finish our project.
We also had issues combining our servo motor code with the 3-6v motor code. We had managed to get both working separately but upon merging the code there were issues in having both run together. This was hard for us to debug as this was a hardware side issue, with some issues in how the power was wired. Because we also weren’t in a room, it was hard to work together to debug these issues.
Accomplishments that we're proud of
As students generally focus on software and design, a hardware project was very new to each of us. We are very proud of being able to build an Arduino project with working motors to drive and turn a car. It may be a relatively simple hardware project, but we are still very proud of being able to put our idea into a physical project that actually moves.
What we learned
We learned a lot about how to use an Arduino board to output pins used to drive motors. This took a lot of research and testing to move the motors how we want, and use it to build a simple car. While we did not end up writing a lot of software for our robot, this introduction to robotics was very helpful for us. With what we learned from this project, we can add more features to our project, like a motor to pick up and put down the pen.
What's next for Drawbot
We need to replace the 3-6V motor with a working one before creating additional features. But in the future, we can add additional motors for controlling the pen and create spirographs with the Drawbot.
We would like to simplify the user experience with directing drawbot. Currently, the user would have to program the robot to move left, right, front, back, etc. We wish to add an interactive GUI (remote control) for users to use to make drawing easier.