Page 1 of 1

Micro Robot

Posted: Sat Mar 05, 2022 5:08 pm
by parkview
We have tested quite a few cheap Chinese robots and found each one missing a feature or two that we would like, so a couple of us are having a go at designing a Micro Robot. This will be Raspberry Pi based, but hosts an ESP32-Pico MCU to help out with monitoring and controlling things.

Initial Features List:
  • Raspberry Pi 3 or 4 socket
  • ESP32-Pico MCU
  • dual 2S 18650 Li-ion batteries, upgrade able to 2S2P, with built in battery protection and charging (BQ24715, HY2120, HY2213)
  • 6V-8.4V to 5V @5A DC-DC convertor and 3.3V @ 1A and ESP32 controls the RPi Power (XL4005, AMS1117)
  • voltage and current usage monitoring (IAN219A)
  • dual 6V - 8.4V motor voltage, with thermal protection and PWM (BDR6133)
  • provision for dual motor encoders
  • 16 GPIO via i2C Digital I/O expander (PCA9535) Silicon chip shortage of the usual MCP23017
  • various temperature, humidity, light. 6-DoF Accelerometer/Gyro sensors (SHTC3, LDR, LSM6DSL)
  • Real Time Clock (PCF853063) testing this out to see how stable it is
  • 4 bit user config DIP Switches
  • Mag buzzer + i2S based microphone and speaker audio (SPH0645, MAX98357)
  • e-Stop (turns off motor power) + monitored via ESP32
  • USB UART programming interface + CAN Bus serial link - for testing (CP2102, MAX3051)
  • provision for up to 4 bumper switches
  • ultrasonic distance sensor port
  • Sharp distance sensor port
  • 4 user LEDs
  • RGB LED port

This is all split across a Battery Power board and the Controller board. We still have to design an laser cut acrylic base for the robot. The wheels will initially be the cheap plastic yellow motors. The PCB designs have been sent off to JLCPCB and just waiting on the return shipping.

The Power Board:
Micro Ozbot - Power PCB_V0.5_sml.jpg
Micro Ozbot - Power PCB_V0.5_sml.jpg (66.59 KiB) Viewed 1739 times

The Controller board - front:
Micro Ozbot Controller V0.5-Front_sml.jpg
Micro Ozbot Controller V0.5-Front_sml.jpg (90.24 KiB) Viewed 1739 times

The Controller board - back:
Micro Ozbot Controller V0.5 Back_sml.jpg
Micro Ozbot Controller V0.5 Back_sml.jpg (66.01 KiB) Viewed 1739 times
Note: these boards are just engineering prototypes, not what the final PCB might look like. These will be used to test and check that everything works as expected. I would presume we might need to spin out a few revisions along the way. This is all part of the fun journey.

Re: Micro Robot

Posted: Thu Jan 05, 2023 2:43 pm
by parkview
The V0.5 (I seem to like starting my board versions off at 0.5 for the initial design), arrived some time ago and it didn't take long to make up.

Most of the features worked, however most of it relied on having a Raspberry Pi of some kind attached. This was during the difficult times (2022) of Raspberry Pi shortages, so if you could find one, then it cost an exorbitant price. The next PCB design V0.6, migrated most of the sensors over to the ESP32-Pico MCU. This meant that you could run the robot directly from a ESP32 MCU. The connectors where re-aligned so the board would fit comfortably onto a RPi.

Re: Micro Robot

Posted: Thu Jan 05, 2023 2:45 pm
by parkview
Version 0.6 PCB arrived and was assembled and tested well. While it's meant to work with the corresponding dual Li-ion 18650 battery power supply PCB, during testing it was painfully discovered that one should not plug power in around the wrong way and therefore magic smoke was released.

This helped initiate design version 0.7 of the PCB and a reverse voltage protection MOSFET was added. While using a ESP32-Pico and chip antenna looks impressively small, positioning it correctly so that all the GPIO pins work 100% is a painful exercise. I took the opportunity to upgraded the MCU to a much easier to place ESP32-S3-WROOM module. The AMS117 LDO was replaced with the smaller and more efficient XC6227 600mA SOT23-5 LDO and I added a AHT20 air pressure sensor.