Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Design integrated PCB that can run the framework #12

Open
Ezward opened this issue Feb 17, 2021 · 12 comments
Open

Design integrated PCB that can run the framework #12

Ezward opened this issue Feb 17, 2021 · 12 comments
Labels
Discussion Discussion of issue or feature

Comments

@Ezward
Copy link
Owner

Ezward commented Feb 17, 2021

Let's start to collect requirements here

  • on board ESP32Cam functionality (Esp32 + camera)
  • on board motor driver and power circuitry
  • we can discuss power handling. I am currently using a 5v USB power bank. This works well to deliver 5v to Esp32Cam and also delivers power to motors. However, motors are rated at a higher power and would work a little better with 6v. Setting up power is one of the biggest pains for beginners, so that is why I chose the USB power bank. So we should keep simplicity in mind.
  • make sure I2S bus pins are exposes so we can add I2S modules like PCA9685 or OLED display.
  • form factor should make it easy to mount as a front-facing camera. This is one of the biggest pains with the ESP32Cam; it has no mounting holes and it is hard to get to the reset button. We should try to address those issues in this design.
@Ezward Ezward added the Discussion Discussion of issue or feature label Feb 17, 2021
@Ezward
Copy link
Owner Author

Ezward commented Feb 17, 2021

Expressif has announced the Esp32-S3 dual core LX7 microcontroller. This is a little faster and has some SIMD instructions to speed up machine learning algorithms. It's probably very close in pins to the Esp32-S2, but it had dropped CAN-bus for instance. It also adds USB support directly to the chip (No external programmer needed!). I guess that opens up the question, are you thinking about using an Esp32 module or are you thinking about a board where we plug-in the Esp32Cam directly?

@Ezward
Copy link
Owner Author

Ezward commented Feb 17, 2021

I'm not using the SD card functionality on the ESP32Cam currently. I'd probably rather have those pins freed up that have the SD card. But you may disagree. What might we do with it? I could see a function where we could tell the rover to record to the SD card when it finds something interesting. For instance, we could use a neural network running on the web application to recognize cats and dogs, then send a command to the rover to take a picture. That would be fun. What do you think?

@cgrrty
Copy link

cgrrty commented Feb 18, 2021

Hi
I want to design a bottom board

  • One power module, power supply for all modules
  • ESP32Cam can be plugged into it. (Or some other type of core board.)
  • Some fixed holes will be left on the bottom board to fix the motor that drives the wheel.
  • Motor speed measuring module (Mybe two IO)
  • Motor drive module(PCA9685 )
    -SD can be retained on the core board
    ps
    Esp32-S3, I'll get to know it when I have time.

@cgrrty
Copy link

cgrrty commented Feb 18, 2021

The first version of PCB may be more like a test board. (Will gradually improve)
It is mainly used for preliminary verification of the scheme.

@cgrrty
Copy link

cgrrty commented Feb 18, 2021

Pcb is produced very quickly on our side.
I'm not used to debugging hardware with hole boards right now, so I want to design a version of PCB.
My English is not very good.
If I have grammatical or lexical problems, you can point out.

@Ezward
Copy link
Owner Author

Ezward commented Feb 18, 2021

I understand; you would like to create a PCB that acts as the chassis to the rover as well as the circuitry. That is very cool. I like that idea.

We definitely need a wheel encoder on each wheel of the two wheels; that is necessary for speed control.

You English is infinitely better than my attempts at your language!

@Ezward
Copy link
Owner Author

Ezward commented Feb 18, 2021

Doing a little 'competitive analysis' I know there are a number of robots build using the microbit board that use a PCB-as-chassis design.

They often use a smaller (and higher quality) N20 gear motor. This one uses N20 motors with hall-effect quadrature encoders: https://www.amazon.com/DFROBOT-Maqueen-Micro-Programming-Educational/dp/B089CS3NXJ/ref=asc_df_B07Y37Q3WK/. That is a very nice configuration that would provide more precise speed control that the cheaper gear motors and optical encoders that I'm currently using. They also cost a bit more. This is kit is about $55USD before shipping.

Here is one that uses yellow gear motors; note it does not have encoders; we would want allow for encoders; https://chicagodist.com/products/kitronik-move-motor-for-the-bbc-micro-bit
But this is much cheaper ($30USD) than the above kit. It still look very compact.

The microbit brain is about $15USD, but does not include a camera. I think the Esp32Cam is cheaper, has a true wifi chip and a camera, so it could provide a more capable robot for less money.

Here is a version of the maqueen-plus that includes a camera: https://www.dfrobot.com/product-2030.html. That is $110USD!

@cgrrty
Copy link

cgrrty commented Feb 19, 2021

Hi
I found two car chassis.They're all cheap.
Their quality may not be very good.
I want to choose some good accessories and remake them.
Which is more suitable for us, four-wheel drive or two-wheel drive?
There is a rotational speed measurement on each wheel.
The price is between $2USD and $8USD.
Here are the links. I don't know if the links are valid for you?
https://item.taobao.com/item.htm?spm=a230r.1.14.14.4e054795bivS8u&id=522578524873&ns=1&abbucket=1#detail
https://item.taobao.com/item.htm?spm=a230r.1.14.35.4e054795bivS8u&id=538177034577&ns=1&abbucket=1#detail

@cgrrty
Copy link

cgrrty commented Feb 19, 2021

001
002

@Ezward
Copy link
Owner Author

Ezward commented Feb 19, 2021

I have been using the two wheel drive chassis that that you have pictured. I have not tried the 4 wheel drive model. We are already running short of pins on the ESP32cam, so we would not have enough pins to read the wheel encoders for the 4 wheel drive version.

@Ezward
Copy link
Owner Author

Ezward commented Mar 3, 2021

check out the 3d printed camera mount in https://github.com/Ezward/Esp32CameraRover2/blob/master/docs/building_the_rover.md; it will mount on either of the chassis you linked to.

@samuk
Copy link

samuk commented May 22, 2023

Just dropping this here: It lacks the camera & encoders though: https://github.com/rosmo-robot/CrowBot#crowbot

This one I did for the Microbit has encoders: https://github.com/rosmo-robot/micro-bot/tree/master/Hardware/V3#readme

It might be worth re-working that. I'd be quite interested in doing a variant for the RP2040 Pico footprint.

https://www.arducam.com/product/rp2040-based-arducam-pico4ml-dev-board-for-machine-vision/ might be a nice MCU to develop the bot around.

I might fork the PCB from https://github.com/IDiAL-IMSL/Edurob and update it to use the Pico pinout.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Discussion Discussion of issue or feature
Projects
None yet
Development

No branches or pull requests

3 participants