on
Turning a Botly into a Wally
Introduction
Botly is a little pedagocical robot. We are using it to teach robotics, programming & electronics to childrens. Check out our (Website)[https://bolty.lamachinerie.org]
Botly is a fablab made robot. Most of its part are laser cutted only the wheels remains 3D printed. It has two stepper motors, an active pen holder, and a custom electronic board (Fablab made but not produce in the lab).
A few weeks ago we decided to create a new version of Botly to draw on wall. This version will be called Wally.
Idea
We were inspired by other existing drawwall robot and we planned to use the same principle. Using two slings and two pulleys you may build a draw bot with a special kinematics.
Here is an example :
Making !
One of my collegue as designed the new robot on Fusion 360. Its design was mostly perfect. But not enough artistic for me so I’ve decided to pimp it a bit.
Original design :
Finally, the first design was a bit too heavy. So I’ve decided to remove material by drawing voronoi shape onto the main plate. It also make it look more funky !
Final result :
Afterwards I’ve finally lasercutted the parts. To save material I’ve organised all the part onto a DXF. Like so :
I’ve found a piece a wood remaining from another project. It was big enough for my project so I used it !
After setting the focus and the anchor of the laser cutter. I’ve entered the right parameters for m wood. (Power 80, Speed 50).
I finnaly start the job. Here are the results :
I’ve disassembled Botly to use its screw for Wally. After a bit of sanding to remove the burned edge, I’ve finnaly assembled everything. The result is quite nice !
I’ve then fixed the robot on the Wall. And .. It doesn’t worked ! The pulley I used where the wheel from the botly…
Unfortunately the wheel was too thin and not suitable as a pulley. so we designed a new one which worked as a charm.
Here it is :
Finnaly it worded very well with these new pulley. The only problem remaining is the kinematics. Actually Wally and botly didn’t work the say way. They have not the same way of moving. So I have to refactor the Botly-library in order to make it work.
Programming !
The botly-library available here is a complete library to easily control the robot. It allows the user to programm the robot with very simple function as :
- forward
- backward
- turnLeft
- tunerRight
- raisePen
- lowerPen
- …
We created a Visual programming webapplication to facilitate the programming process. This website is accesible here The Botly robot works with a cartesian geometry which is pretty simple to use. Just by converting distance to number of step. You can control the robot in 2D. Wally instead work with a strange polar kinematics. And the calculation of the movement depends on the place you are on the paper. So with this robot we will have to set the origin position of the robot before is can draw anything. To do so I had to implement a remote control system using the library Remote control. I used this piece of code to note the code of my remote’s button
#include <IRremote.h>
const int RECV_PIN = 7;
IRrecv irrecv(RECV_PIN);
void setup(){
Serial.begin(9600);
irrecv.enableIRIn();
}
void loop(){
if (irrecv.decode(&results)){
Serial.println(results.value, HEX);
irrecv.resume();
}
}
Then for each case I attach a function to each key.
Source
- Placeholder : Placeholder