Arduino Nano 33 BLE processing capacity is moderately high for the low power consumption embedded system. Since it has many sensors on board, it seems to be very fun to run TinyML like software.
I thought it would be even more fun to connect vision, so I created a board with a low-cost camera OV7670 (around $3) connected.
In addition, the necessary power supply control, PWM controller IC for offloading servo processing, speakers, IR receiver, etc. were mounted.
The OV7670 connection is arranged so that the library (https://github.com/arduino-libraries/Arduino_OV767X) can be used. The camera is powered by 3.3V from the Arduino Nano 33 BLE.
It is a little heavy to control the servo signal while executing the library for the camera and ML processing, so I connected PCA9685 PWM controller through I2C interface for servo control. This IC maintain servo control signal all the time.
Unlike the conventional nano, the Nano 33 can only supply 5V via USB power, so I have placed a voltage regulator that generates 5V from the battery. The battery is supposed to be rechargeable 9V, but any battery 6-20V can be connected.
It is also possible to supply 5V from an external system if you change power source select jumper. In that case, 5V will be supplied directly to the Nano 33 and servos.
In addition, NeoPixel (color RGB LED), piezo speaker, and IR receiver are added to enrich the expression or add the efficiency of program development.
In the next report, I would like to introduce examples of small table robot and four-legged robot that use this board.
The printed circuit board is made by sending Gerber data to jlcpcb.com.
The article "Machine vision with low-cost camera modules" was very helpful for this design. Thank you very much.
Comments