A driving robot

Experimenting in small ways

My first practice was to construct small little prototypes that we could use in our final product. Testing the dc motors, and servo motors for torque were important. We needed to push mass so it is important to know which motors are capable of performing the job as efficient without using to much power. I quickly noticed that the dc motors didn't have to much torque. So pushing mass around was not going to work out.

I did some research and I noticed that we needed to have dc motors that were gearbox driven. We didn't purchase those components.

A mistake was made!

Wheel that is taped to a servo
Driver motor linked to a dc motor

I tackled the problem in a creative way. I remembered I purchased ten 180 degree motors. I modified them into continuous rotation servo's using this tutorial:

https://www.youtube.com/watch?v=zZGkkzMBL28&ab_channel=MichaelKlements

Now the servo's were spinning in a continuous rotation. I could speed up, slow down, reverse, halt. Everything that we need to make a small driving robot. The only disadvantage is the power usage of those motors. I needed to get an external battery that powers these motors. The only problem is, this adds a lot of weight to our product.

This is only a prototype version, not a final version

So I tackled the problem on how to move the mass of an object. and I also tested every component I bought.

Speaker module
Infrared sensor

Additionally, I tested the BLE sense micro speech demo. When saying yes, the onboard led would turn green,

Yes

when saying "no", the onboard led would turn red

No

Now it is the perfect opportunity to combine these prototypes with machine learning. But first, we needed to know how we could transfer data from one master microcontroller to another slave microcontroller that follows up commands.

We did this by using I2c in Arduino. You can compare this with a WebSocket server. One master Arduino emits data to the slave microcontroller. We chose our BLE sense as master microcontroller because this microcontroller will be the human brain of the robot that sends data to the other slave microcontroller, this microcontroller will be the limbs of the human and follow commands that the brain gives him. Just like a real human!

slave and master schematic

In the picture down below, The tiny microcontroller (ble sense) controls the servo that is connected to our Arduino Uno with voice commands.

Servo control with voice commands

Next up, will be making our own models and finish our driving robot that can react to different kind of voice commands.

When we completed this step, we reached our deliverable for this week!