Author Topic: Looking for criticism on Micromouse board design  (Read 1549 times)

0 Members and 1 Guest are viewing this topic.

Offline FrzoenTopic starter

  • Newbie
  • Posts: 5
  • Country: pl
Looking for criticism on Micromouse board design
« on: September 01, 2020, 04:04:19 pm »
I need a lot of criticism on my project. It is a micromouse with added wifi (ESP-01 ESP8266) module and rgb.
I have basically finished first round of design witch lead me to the electronically/mechanically working robot (software is another ongoing project in my student association).

I'm looking for any opinions and ideas for improvements on PCB layout/schematic for next revision/version.

Link for the KiCad files is here: https://github.com/synergia/synermycha-electronics

There are many unnecessary things (like wifi or rgb leds on bottom of PCB) but i want to keep them.
This project was suppose to look better than it can work  :)

Schematic in PDF:
https://www.eevblog.com/forum/projects/looking-for-criticism-on-micromouse-board/?action=dlattach;attach=1057992

Schematic in PNG in attachments  :)

Some pics/renders:

« Last Edit: September 01, 2020, 07:07:33 pm by Frzoen »
 
The following users thanked this post: MK14

Online MK14

  • Super Contributor
  • ***
  • Posts: 4987
  • Country: gb
Re: Looking for criticism on Micromouse board design
« Reply #1 on: September 01, 2020, 05:16:37 pm »
I need a lot of criticism

Welcome to the forums!   :)

Well, to start off. It would be better, if you included the schematic in some visible form. Relying on other forum users to take the time and trouble, to access/install KiCad (if necessary), go to Github, and download/extract/unzip your files, then finally view them.
Could reduce your potential viewership.

E.g. Images and/or PDFs of the schematic(s). Ideally, uploaded to this forum.
By all means include the github references, as well.

Image(s) are best, because some people are on Phones/Tablets(Arm), which can't really readily run KiCad. Even PDFs can be problematic, on some devices, used to view these forums.
« Last Edit: September 01, 2020, 05:30:04 pm by MK14 »
 

Offline FrzoenTopic starter

  • Newbie
  • Posts: 5
  • Country: pl
Re: Looking for criticism on Micromouse board design
« Reply #2 on: September 01, 2020, 05:56:42 pm »
Good advice. I will modify initial post.
Thanks!
 
The following users thanked this post: MK14

Online MK14

  • Super Contributor
  • ***
  • Posts: 4987
  • Country: gb
Re: Looking for criticism on Micromouse board design
« Reply #3 on: September 01, 2020, 08:26:57 pm »
Thanks, that is interesting and it looks good!

Some questions (rather than criticisms).

The (  https://www.st.com/en/imaging-and-photonics-solutions/vl53l0x.html  ) what appear to be time-of-flight sensors.
Are they going to interact/interfere with each other (i.e. in a bad way) ?
E.g. If the light patterns intersect at all, and are enabled/switched on at the same time.

Is the response time (lag) of such sensors, going to suit a moving robot/Micromouse ?
Datasheet:  https://www.st.com/resource/en/datasheet/vl53l0x.pdf

Because around page 26/27, it seems to say 200 milliseconds (33 ms seems to be the fastest speed mentioned on that page, which is still fairly slow, also you seem to have numerous sensors, which might not work in parallel, if they interfere with each other), are needed for high accuracy measurements. If the robot is moving at speed, such delays could mean it has hit the obstacle/wall and/or overshot the intended position.

I could have missed the details in the images/PDF (thanks for doing that!). But what specifically have you used for the encoders and Motors (gearbox/ratios) ?
 

Offline FrzoenTopic starter

  • Newbie
  • Posts: 5
  • Country: pl
Re: Looking for criticism on Micromouse board design
« Reply #4 on: September 02, 2020, 06:12:25 am »
The (  https://www.st.com/en/imaging-and-photonics-solutions/vl53l0x.html  ) what appear to be time-of-flight sensors.
Are they going to interact/interfere with each other (i.e. in a bad way) ?
E.g. If the light patterns intersect at all, and are enabled/switched on at the same time.

Is the response time (lag) of such sensors, going to suit a moving robot/Micromouse ?
Datasheet:  https://www.st.com/resource/en/datasheet/vl53l0x.pdf

The VL53L0x are not going to interfere with each other. We'll keep them idling with use of xshut pin and only enable them one at a time. 
Light patterns shouldn't interfere but still we'll make a chain scan.

The response time isn't crucial. Micromouse run is divided into two parts. Scanning (slower) and solving (faster). During scanning part robot is moving slow and lag from sensors naively can be ignored (or compensated in software). More than actual distance from wall we care if the wall is there at all. In solving phase robot is mostly relaying on encoders.

But what specifically have you used for the encoders and Motors (gearbox/ratios) ?

We used 6v pololu micromotors with 30: 1 gear ratio in combination with a magnetic ring (44 poles) and AS5304 encoders.
The ring is mounted on the wheel in such a way that we can eliminatevl53 the play between the motors and the wheel.
 

Online MK14

  • Super Contributor
  • ***
  • Posts: 4987
  • Country: gb
Re: Looking for criticism on Micromouse board design
« Reply #5 on: September 02, 2020, 09:04:57 am »
The response time isn't crucial.

I suppose at hugely slow speeds, while moving in a straight line, it might work, some of the time, maybe.
But at higher speeds, when trying to do tight turns, after wheel(s) have slipped, and the position/angles are not where they are suppose to be, maybe not.

Anyway, it should be a good learning exercise, either way.

You have got, what 2 cm of clearance, either side when doing turns ?

Perhaps 18 cm - (wall thickness + Micromouse width + initial position error) = Not that much.

So, even small angular/positional errors, can soon mount up, turns are not the easiest of things to do, especially at speed. So, very slow responding sensors, doesn't help.

If it works reliably 90% of the time, that would mean the Micromouse would crash every 10th turn or movement.
 

Offline FrzoenTopic starter

  • Newbie
  • Posts: 5
  • Country: pl
Re: Looking for criticism on Micromouse board design
« Reply #6 on: September 02, 2020, 09:42:07 am »
I suppose at hugely slow speeds, while moving in a straight line, it might work, some of the time, maybe.
But at higher speeds, when trying to do tight turns, after wheel(s) have slipped, and the position/angles are not where they are suppose to be, maybe not.

By saying that in second phase robot relays mostly on encoders i didn't meant that we'll ignore distance from walls.
I agree that is't still necessary to close loop of the control algorithm with feedback from VL53L0x.
In previous version of micromouse we're using VCNL4010 proximity sensor (not ideal for distance measuring btw.).
With this (VCNL4010) we're pooling each sensor with frequency of 10Hz and that was sufficient enough. With VL530Lx we wanted about 20Hz measurement frequency witch i think is achievable.

16.4cm is a track width (0.8 per wall thickness) - 5cm of robot width gives us ~5cm on both sides of robot. I think we are good with robot dimensions  :)


So, even small angular/positional errors, can soon mount up, turns are not the easiest of things to do, especially at speed. So, very slow responding sensors, doesn't help.

If it works reliably 90% of the time, that would mean the Micromouse would crash every 10th turn or movement.

Slippage of wheels, miss positioning of robot, kinematics, dynamics, control theory and so on was my daily concerns on my bachelors/master studies. I think we've sorted them out. :)

Ps. This is out 4th micromouse robot (if counting only those made on our PCB's not made from arduinos :) ). Below some pictures of older ones.
« Last Edit: September 02, 2020, 09:48:03 am by Frzoen »
 

Online MK14

  • Super Contributor
  • ***
  • Posts: 4987
  • Country: gb
Re: Looking for criticism on Micromouse board design
« Reply #7 on: September 02, 2020, 11:17:32 am »
I'm glad you're improving your robot designs, on an incrementally better, each time process, and learning from it.
 

Offline daqq

  • Super Contributor
  • ***
  • Posts: 2321
  • Country: sk
    • My site
Re: Looking for criticism on Micromouse board design
« Reply #8 on: September 02, 2020, 09:15:34 pm »
Welcome to the forums! Very nice design.

If I had to nitpick:

The button debouncing circuit isn't all that great - when you press a button you will be effectively shorting a capacitor to ground. The energies aren't particularly high, but you aren't behaving nicely to your switches and the contacts *may* get unhappy. Most of your debouncing can be done in software these days.

Not sure the buzzer needs a series resistor.

If you want to save space, you may want to go for a single multiple output DC DC converter instead of 4 LDOs. Or a multioutput LDO

Wouldn't it be easier to operate the VL53xxx of of +3V3, thereby saving you a power rail and trouble?
Believe it or not, pointy haired people do exist!
+++Divide By Cucumber Error. Please Reinstall Universe And Reboot +++
 

Offline FrzoenTopic starter

  • Newbie
  • Posts: 5
  • Country: pl
Re: Looking for criticism on Micromouse board design
« Reply #9 on: September 04, 2020, 06:40:52 am »
The button debouncing circuit isn't all that great - when you press a button you will be effectively shorting a capacitor to ground. The energies aren't particularly high, but you aren't behaving nicely to your switches and the contacts *may* get unhappy. Most of your debouncing can be done in software these days.

I'm aware of that. To be honest i just forgot to put them into the design. There is even issue on git about this "bug" and in next revision i will add those resistors. Still i like to have hardware debouncing. I like to simplify my work later in software (i know that this approach is not suitable in large scale projects, where every capacitor and resistor counts).

Not sure the buzzer needs a series resistor.

I followed this article: https://www.murata.com/en-global/support/faqs/products/sound/sounder/char/sch0007 for buzzer circuit.
I wanted to be able to mount both piezzo and electromagnetic buzzers (changing the diode in parallel to the buzzer for the resistor).
Right now this series resistor is not present and his pads are shorted together. This is thing to change in schematic to be more clear about this options.

If you want to save space, you may want to go for a single multiple output DC DC converter instead of 4 LDOs. Or a multioutput LDO

Wouldn't it be easier to operate the VL53xxx of of +3V3, thereby saving you a power rail and trouble?


This is my first adventure with VL53xxx and i wanted to operate them in their optimal conditions (datasheet suggests 2v8).
Next time i will definitely go for operating in 3v3 to save me this 2v8 rail and also go for multioutput LDO for 3v3 and 5v rails following your advice.
I want to keep 6v rail separate (it's only supplying motors, feeling right thing to do). Again there is a option to eliminate this rail (6v) and connect h-bridge directly to +7.4V from batteries.
This would enable higher speeds on this same gear ratio but i wanted consistency in operation of motors (removing variable of changing supply voltage on motors for control algorithm).
Pololu 6V motors easily can handle up to 9V of operation (not and advice  :) just an observation) but then they wear out very quickly.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf